Home Segments Top Top Previous Next

705: Sidetrip

You can reduce still more the number of names that you need to invent by defining inner classes that have no names at all. You use a syntactic convention that replaces the name of the inner class in the new expression with a definition of that inner class. Note that the definition includes the name of the extended class, WindowAdapter:

import javax.swing.*; 
import java.awt.event.*; 
public class MovieApplication extends JFrame { 
 public static void main (String argv []) { 
  new MovieApplication("Movie Application"); 
 } 
 public MovieApplication(String title) { 
  super(title); 
  setSize(300, 100); 
  addWindowListener(new WindowAdapter () { 
                     public void windowClosing(WindowEvent e) { 
                     System.exit(0); 
                    }} 
                   ); 
  show(); 
 } 
}