Example 7-8. Examples:
new_expression ==> new [ ( expression ) ]
new expressions are used to allocate space for reference objects and may only appear in reference classes. They return reference objects of type SAME. All non-shared attributes and array elements are initialized to void (See void expressions). If there is an include path from the type in which the new appears to AREF (See Built-in classes), then new must be provided with a non-negative INT argument which specifies the number of array elements in the returned object.