97 Java実践:匿名オブジェクトの作成


Javaの一般的な練習7 9(匿名クラス)

class Exercise709 {
	
	public static void main(String[] args) {
		Frame f = new Frame();
		f.addWindowListener(new EventHander());
	}
}

class EventHandler extends WindowAdapter {
	public void windowClosing(WindowEvent e) {
		e.getWindow().setVisible(false);
		e.getWindow().dispose();
		System.exit(0);
	}
}
  • のEventHandlerを匿名クラスに変更します.
  • 匿名オブジェクトの作成は、抽象クラス、またはインタフェースの使用を前提としています.
    プロンプトのコードに従って、EventHandlerクラスはWindowAdapterを継承しています.
    これはjavaライブラリにすでに存在する抽象クラスです.
    つまり、クラスを別途定義することなく、コードの構成を匿名クラスに変更できます.
    親クラスの抽象クラスであるWindowAdapterタイプのオブジェクトを作成し、EventHandlerが実装する機能を定義します->匿名オブジェクトの作成
    class Exercise709 {
    	
    	public static void main(String[] args) {
    		Frame f = new Frame();
    		f.addWindowListener(new WindowAdapter() {
    			public void windowClosing(WindowEvent e) {
    				e.getWindow().setVisible(false);
    				e.getWindow().dispose();
    				System.exit(0);
    			}
    		});
    	}
    }