10.12.2012 Views

The Java Language Specification, Third Edition

The Java Language Specification, Third Edition

The Java Language Specification, Third Edition

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

628<br />

remainder, divide by zero exception thrown<br />

by, 37<br />

string concatenation<br />

constructor invocation by, 240<br />

creating new instances with, 45<br />

opt subscript<br />

grammar notation use, 10<br />

optimization<br />

during<br />

preparation phase of linking, 315<br />

resolution phase of linking, 315<br />

final method inlining, 217<br />

finalization, 326<br />

reachable objects reduction, 326<br />

linking<br />

initialization phase of, 321<br />

resolution strategies, 314<br />

optional symbol<br />

term definition, 10<br />

order<br />

evaluation<br />

argument lists left-to-right, 418<br />

binary operators, 415<br />

compound assignment, 415<br />

left-hand operand first, 415<br />

operands evaluated before operations, 416<br />

of other expressions, 419<br />

parentheses and precedence respected,<br />

417<br />

execution, 560<br />

field initialization, at run-time, 265<br />

finalizer invocations, implications of no<br />

ordering imposition, 329<br />

of floating-point values, 39<br />

happens-before, 561<br />

of occurrence, of initialization of types, 316<br />

partial, 568, 575<br />

restrictions of, 555<br />

program, 558, 560, 561, 562, 567<br />

synchronization, 561, 567<br />

total, 560, 567<br />

origin<br />

of arrays, 290<br />

OutOfMemoryError, 95, 314, 430<br />

output<br />

See files<br />

overflow<br />

See also arithmetic; exceptions; numbers<br />

floating-point operators, signed infinity produced<br />

by, 41<br />

not indicated by integer operators, 37<br />

overloading<br />

See also object-oriented concepts; inheritance;<br />

methods<br />

of abstract interface methods<br />

declarations, 268<br />

example, 269<br />

of constructors, 246<br />

binary compatibility considerations, 355<br />

of methods, 229<br />

binary compatibility considerations, 355<br />

example, 231<br />

term definition, 124, 229<br />

Override annotation, 279<br />

overriding<br />

See also object-oriented concepts; scope<br />

examples, 231, 232, 234, 269<br />

incorrect, 231<br />

incorrect because of throws, example, 236<br />

large example, 234<br />

methods<br />

abstract<br />

in abstract classes, 215<br />

of non-abstract instance methods,<br />

215<br />

binary compatibility considerations, 356<br />

in interfaces, 267<br />

example, 269<br />

instance, 224<br />

requirements in, 225<br />

term definition, 124<br />

P<br />

packages<br />

(chapter), 153<br />

and overriding, 224<br />

annotation(s), 281, 410<br />

binary compatibility considerations, 340<br />

canonical name of, 146<br />

declarations<br />

in compilation units, 158<br />

shadowing, 160<br />

as declared entity, 113<br />

host support for, 155

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!