Professional Documents
Culture Documents
7 Inner Classes
7 Inner Classes
Inner Classes
Interfaces
An interface describes methods but does not
supply bodies for them.
interface KeyListener {
public void keyPressed(KeyEvent e);
public void keyReleased(KeyEvent e);
public void keyTyped(KeyEvent e);
}
Anonymous classes
syntax is ugly but anonymous classes are useful
Member classes
A member class is an ordinary inner class
class Outer {
int n;
class Inner {
int ten = 10;
void setNToTen ( ) { n = 10; }
}
void setN ( ) {
new Inner ( ).setNToTen ( );
}
}
Member classes II
Member classes are useful for handling
events
Button b = new Button (Click Me);
b.addActionListener (new Clicker ( ));
Local classes
A local class is a class defined inside a
method.
A local class cannot access variables declared
in the method (!)
There are many other restrictions on local
classes.
Interfaces, again
interface KeyListener {
public void keyPressed(KeyEvent e);
public void keyReleased(KeyEvent e);
public void keyTyped(KeyEvent e);
}
Adapters
class KeyAdapter implements KeyListener
{
public void keyPressed(KeyEvent e) { };
public void keyReleased(KeyEvent e) { };
public void keyTyped(KeyEvent e) { };
}
The End