正在加载图片...
你定义的 Listener可以继承 Adapter类,而且只需重写你所需要的方法。例如: 现每个 Listener接口的所有方法的工作量是非常大的,尤其是 Mouselistener接口和 ComponentListener接口。 以 Mouselistener接口为例,它定义了如下方法 mouseClicked(Mous eVent mouseEntered(Mous eVent) mouseExited( Mouse Event mousePressed(Mous eVent mouseReleased (Mouseevent) 为了方便起见,Java语言提供了 Adapters类,用来实现含有多个方法的类。这些 Adapters类中的方法是空的。 可以继承 Adapters类,而且只需重写你所需要的方法。例如: 1. import java.awt.* 2. import java. awt. event. 4. public class MouseClickHandler extends Mouse Adapter t 6.//We just need the mous eClick handler, so we use 7.// the Adapter to avoid having to write all the 8.// event handler me thods 9.public void mouseClicked (MouseEvent e) 10.// Do something with the mouse click 12.} 9.55匿名类 可以在一个表达式的域中,包含整个类的定义。这种方法定义了一个所谓的匿名类并且立即创建了实例。匿名类通 常和AWT事件处理一起使用。例如 2.import java. awt event.* 3. public class AnonTest 4. private Fr ame f 5.private TextField tf. 7. public static void main( String args[1) 8. 9. AnonTest obj new AnonTest(i 10.ob] go(i 匿名类(续) 1. public void go()t 2. f new Frame("Anonymous classes example") 3. f. add(new Label(Click and drag the"+ 4."mouse", Border Layout. NORTH 5. tf new TextField (30) 6.f. add(tf, BorderLayout SoUTH);111 你定义的 Listener 可以继承 Adapter 类,而且只需重写你所需要的方法。例如: 实现每个 Listener 接口的所有方法的工作量是非常大的,尤其是 MouseListener 接口和 ComponentListener 接口。 以 MouseListener 接口为例,它定义了如下方法: - mouseClicked(MouseEvent) - mouseEntered(MouseEvent) - mouseExited(MouseEvent) - mousePressed(MouseEvent) - mouseReleased(MouseEvent) 为了方便起见,Java 语言提供了 Adapters 类,用来实现含有多个方法的类。这些 Adapters 类中的方法是空的。 你可以继承 Adapters 类,而且只需重写你所需要的方法。例如: 1.import java.awt.*; 2.import java.awt.event.*; 3. 4.public class MouseClickHandler extends MouseAdapter { 5. 6.// We just need the mouseClick handler, so we use 7.// the Adapter to avoid having to write all the 8.// event handler methods 9.public void mouseClicked (MouseEvent e) { 10.// Do something with the mouse click... 11.} 12.} 9.5.5 匿名类 可以在一个表达式的域中,包含整个类的定义。这种方法定义了一个所谓的匿名类并且立即创建了实例。匿名类通 常和 AWT 事件处理一起使用。例如: 1.import java.awt.*; 2.import java.awt.event.*; 3.public class AnonTest { 4.private Frame f; 5.private TextField tf; 6. 7.public static void main(String args[]) 8.{ 9.AnonTest obj = new AnonTest(); 10.obj.go(); 11.} 12. 匿名类(续) 1.public void go() { 2.f = new Frame("Anonymous classes example"); 3.f.add(new Label("Click and drag the " + 4." mouse",BorderLayout.NORTH); 5.tf = new TextField (30); 6.f.add(tf,BorderLayout.SOUTH); 7
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有