黑马程序员技术交流社区

标题: 匿名对象和匿名内部类还有什么可以补充的 [打印本页]

作者: 尹兆国    时间: 2014-6-28 20:18
标题: 匿名对象和匿名内部类还有什么可以补充的
匿名对象,如new Thread(),应用场景是仅仅对对象中的方法调用一次,或将匿名对象作为实参传入函数。
匿名内部类,如new Runnable(){},应用场景是当对某个类只使用一次。因为没有名字,所以不能创建匿名内部类对象。

作者: 夏季熬成了秋    时间: 2014-6-28 21:21
感觉匿名内部类也是是为了 实现某一个类中的一个方法,或者说某一抽象类中有多个方法,而我们只需要一个这时候没有必要去创建个类去实现它,这时候使用匿名内部类;
作者: 尹兆国    时间: 2014-6-28 21:32
夏季熬成了秋 发表于 2014-6-28 21:21
感觉匿名内部类也是是为了 实现某一个类中的一个方法,或者说某一抽象类中有多个方法,而我们只需要一个这时 ...

嗯,比如
  1. d.addWindowListener(new WindowAdapter()
  2.                 {
  3.                         public void windowClosing(WindowEvent e)
  4.                         {
  5.                                 d.setVisible(false);
  6.                         }
  7.                 });
复制代码

windowListener中有很多抽象方法,因为只需要一个,此时就可以使用匿名内部类new WindowAdapter(){}
作者: 夏季熬成了秋    时间: 2014-6-29 21:55
尹兆国 发表于 2014-6-28 21:32
嗯,比如

windowListener中有很多抽象方法,因为只需要一个,此时就可以使用匿名内部类new WindowAdapte ...

对,  哎,就是忘了这叫什么模式.你知道吗.这是种设计模式




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2