A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

匿名对象,如new Thread(),应用场景是仅仅对对象中的方法调用一次,或将匿名对象作为实参传入函数。
匿名内部类,如new Runnable(){},应用场景是当对某个类只使用一次。因为没有名字,所以不能创建匿名内部类对象。

3 个回复

倒序浏览
感觉匿名内部类也是是为了 实现某一个类中的一个方法,或者说某一抽象类中有多个方法,而我们只需要一个这时候没有必要去创建个类去实现它,这时候使用匿名内部类;
回复 使用道具 举报
夏季熬成了秋 发表于 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-28 21:32
嗯,比如

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

对,  哎,就是忘了这叫什么模式.你知道吗.这是种设计模式
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马