Anonymous Inner Class(匿名内部类)是否可以extends其他类?是否可以implements interface?
来源:互联网 发布:15万suv还是轿车 知乎 编辑:程序博客网 时间:2024/05/16 12:06
1.什么是匿名内部类?
内部类,存在于另一个类内部的类,而匿名内部类,顾名思义,就是没有名字的内部类。
2.为什么需要匿名内部类?
每个inner class都能够各自继承某一实现类(implementation)。因此,innner class不受限于outer class是否已继承自某一实现类。
如果少了inner class所提供的“继承自多个具象(concrete)或抽象(abstract)类”的能力,设计上和编程上的某些问题会变得十分棘手。
所以,从某个角度来看inner class,你可以说它是多重继承问题的完整解决方案。interface能够解决掉其中一部分问题,但inner class才能有效而实际的允许“多重实现继承(multiple implementation)”。也就是说,inner classes实际上允许你继承多个non-interface。
从这个层面上使用内部类是一般都是通过其父类或继承的接口来进行实例化和初始化的,如3中所示,这是内部类的名字是多余的。
3.怎么实现匿名内部类?
匿名内部类的实现非常简单,如有一接口
Interface A{
public void method();
}
这是你可以写一个如下的语句得到接口A的实现类的对象
A a=new A(){
public void method(){
System.out.println("hehe");
}
};
而其中的{public void method(){System.out.println("hehe");}};就是定义了一个匿名内部类。
4.问题答案
以上可以看出匿名内部类在实现时必须借助一个类或一个接口,若从这个层次上讲它是可以继承其他类也可以实现接口的,但若通过extends或implements关键字那是不可能的。
- Anonymous Inner Class(匿名内部类)是否可以extends其他类?是否可以implements interface?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- 第二,Anonymous Inner Class(匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Static Nested Class 和 Inner Class的不同。Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类)是否可以继承其他类,是否可以实现接口?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类?
- Static Nested Class 和 Inner Class的不同。Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implement
- 9AnonymousInnerClass(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class(匿名内部类)是否可以继承其它类?是否可以实现接口?【Java面试题】
- Android无线网络使用无线键盘、触摸屏操作手机
- CSDN论坛网友写的一篇IOCP文章 -- 理解IOCP
- PROFINET及其同步实时通讯分析
- linux命令strings
- Euler公式
- Anonymous Inner Class(匿名内部类)是否可以extends其他类?是否可以implements interface?
- java反射机制与动态代理
- linux chmod命令
- ubuntu快捷键
- MOTOMAN机器人网络控制的实现
- Android是怎么加载/res/_dpi文件的
- 微信:社交基因和商务交易天然冲突,更适合O2O而不是电商
- 背影
- org.hibernate.hql.ast.QuerySyntaxException: User is not mapped [from User] 异常总结