"原方法代码是addWindowListener(WindowListener l)
为什么上面的重新复写代码 f. addWindowListener(new esc( ) ); 括号内的参数了 l 没有了 "
WindowListener是一个接口,意思是在调用addWindowListener(WindowListener l)方法时要求传入一个实现了WindowListener接口的一个类的对象(也可以使用内部类来达到同样效果),该对象所属的类要求必要实现WindowListener接口定义的所有抽象方法(其实这是废话,接口定义的方法只能是抽象方法,呵呵.).
你的esc类继承自WindowAdapter类,而WindowAdapter类实现了WindowListener接口中的所有方法(其实只是空实现,所有的方法体中没有任何代码.).所以当你的esc类继承WindowAdapter类时,你只要重写WindowAdapter类的windowClosing()方法就可以达到"点右上角的关闭按钮"就触发关闭窗口的事件,这个事件该做什么动作,就看你在重写windowClosing()方法时,在方法体中怎么写代码了. |