Inner Classes Specification
Febuary 4, 1997
What are top-level classes and inner classes?
- Example: A simple adapter class
- Example: A local class
- Anonymous classes
How do inner classes work?
- References to local variables
Why does Java need inner classes?
- Why anonymous classes?
- What about dynamic typing and computed selectors ("perform")?
How do inner classes affect the idea of this in Java code?
- Enclosing classes and instantiation
Do inner classes affect the correct synchronization of Java code?
Can a nested class be declared final, private, protected, or static?
- Members that can be marked static
How do inner classes affect the organization of the Java Virtual Machine?
- Class name transformations
- Names of generated variables and methods
- Security implications
How does the Java Language Specification change for inner classes?
Other changes in the Java 1.1 language
- Instance initializers
- Anonymous array expressions
- Class literals
- Blank finals and final local variables
What are the new binary compatibility requirements for Java 1.1 classes?
- Bytecode names of classes and interfaces
- The class attribute InnerClasses
- The member attribute Synthetic
Further Example: Sample AWT code
Further Example: An API with coordinated inner classes
Further Example: Multi-threaded task partitioning.
Contents | Prev | Next
Inner Classes Specification (HTML generated by dkramer on March 15, 1997)
Copyright © 1996, 1997 Sun Microsystems, Inc.
All rights reserved
Please send any comments or corrections to firstname.lastname@example.org