黑马程序员技术交流社区
标题:
匿名内部类的定义
[打印本页]
作者:
韦振华
时间:
2013-3-27 15:35
标题:
匿名内部类的定义
匿名内部类的定义格式,为什么匿名内部类的定义必须要实现一个接口或者继承一个类?当内部类中实现的方法太多的时候,还可以用定义匿名内部类吗
作者:
HM张勇
时间:
2013-3-27 15:46
一、匿名内部类格式
new 父类或者接口()
{ 定义子类的内容 }
二、匿名内部类中定义的方法最好不要超过3个。
作者:
HM张勇
时间:
2013-3-27 15:50
匿名内部类继承类或实现接口的目的:复写父类的方法,简化代码,提高复用性。实际上是多态的体现,即父类引用接受子类对象,父类引用接受子类对象。
作者:
聂益飞
时间:
2013-3-27 15:56
匿名类是不能有名称的类,所以没办法引用它们。必须在创建时,作为new语句的一部分来声明它们。这就要采用另一种形式的new语句,如下所示: new <类或接口> <类的主体> 这种形式的new语句声明一个新的匿名类,它对一个给定的类进行扩展,或者实现一个给定的接口。它还创建那个类的一个新实例,并把它作为语句的结果而返回。要扩展的类和要实现的接口是new语句的操作数,后跟匿名类的主体。如果匿名类对另一个类进行扩展,它的主体可以访问类的成员、覆盖它的方法等等,这和其他任何标准的类都是一样的。如果匿名类实现了一个接口,它的主体必须实现接口的方法。
java 代码
1.interface pr
2.{
3. void print1();
4.}
5.
6.public class noNameClass
7.{
8. public pr dest()
9. {
10. return new pr(){
11. public void print1()
12. {
13. System.out.println("Hello world!!");
14. }
15. };
16.}
17.
18.public static void main(String args[])
19.{
20. noNameClass c = new noNameClass();
21. pr hw=c.dest();
22. hw.print1();
23.}
24.}
作者:
蔡陶军
时间:
2013-3-27 15:58
匿名类是不能有名称的类,所以没办法引用它们。必须在创建时,作为new语句的一部分来声明它们。这就要采用另一种形式的new语句,如下所示: new <类或接口> <类的主体> 这种形式的new语句声明一个新的匿名类,它对一个给定的类进行扩展,或者实现一个给定的接口。它还创建那个类的一个新实例,并把它作为语句的结果而返回。要扩展的类和要实现的接口是new语句的操作数,后跟匿名类的主体。如果匿名类对另一个类进行扩展,它的主体可以访问类的成员、覆盖它的方法等等,这和其他任何标准的类都是一样的。如果匿名类实现了一个接口,它的主体必须实现接口的方法。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2