When you give a part a name, that name must be a valid Java™ identifier, except that if you are using VisualAge® Generator compatibility mode, you can use a hyphen (-), a number sign (#), or an at sign (@) in a part name, as long as it is not the first character in a part name.
If you choose a name for your part that is the same as a Java keyword, or a name that contains a dollar sign ($), hyphen, number sign, at sign, or underscore, the part name you have chosen will not match the name used in the generated output. This is because Java reserves the use of these symbols for its own use. An aliasing mechanism in EGL automatically appends an underscore to each part name that is the same as a Java keyword. If you specify a name that contains one or more dollar signs, hyphens, number signs, at signs, or underscores, the aliasing mechanism replaces each symbol with a numeric string representing the Unicode value of the replaced symbol, as follows:
$ _0024 - _002d @ _0040 # _0023 _ _005f
For example, if you named a variable class, it would be changed to the alias class_; and a variable named class_ would be changed to the alias class_005f.
The case you use to declare a part name is preserved. Programs XYZ and xyz are generated as XYZ.java and xyz.java respectively.
EGL package names are always converted to lower case Java package names.
Finally, if the name of a generated Java class matches the name of a class from the Java system package java.lang, an underscore is appended to the class name: Object becomes Object_, Error becomes Error_, and so on.