
empty
Indicates that the implementation of the method has an empty body. This can
be a hint to the programmer that the method may need to be overridden in a
subclass.
constant
An implementation flag that indicates that a method has a trivial implementa-
tion. Only methods with a
void retur n type can be truly empty. Any method
declar ed to retur navalue must have at least a
retur n statement. The “constant”
flag indicates that the method implementation is empty except for a
retur n
statement that retur ns a constant value. Such a method might have a body like
retur n null; or retur n false;. Like the “empty” flag, this flag indicates that a method
may need to be overridden.
default:
This flag is used with property accessor methods that read the value of a
pr operty (i.e., methods whose names begins with “get” and take no argu-
ments). The flag is followed by the default value of the property. Strictly
speaking, default property values are a specification detail. In practice, how-
ever, these defaults are not always documented, and care should be taken,
because the default values may change between implementations.
Not all property accessors have a “default:” flag. A default value is determined
by dynamically loading the class in question, instantiating it using a no-argu-
ment constructor, and then calling the method to find out what it retur ns.
This technique can be used only on classes that can be dynamically ...