匿名内部类特点及注意
来源:互联网 发布:系统仿真软件 编辑:程序博客网 时间:2024/06/05 18:49
匿名内部类的特点及注意:
- 匿名内部类也就是没有名字的内部类,无class关键字,直接使用new来生成一个对象的引用正因为没有名字,所以匿名内部类只能使用一次
- 匿名内部类还有个前提条件:必须继承一个父类(抽象类,普通类)或实现一个接口(两者不可兼得,并且只能是一个),它相当于一个具体类(只是没有名字),所以可以使用new
- 不能存在任何的静态成员变量和静态方法。
- 不能是抽象的,它必须要实现继承的类或者实现的接口的所有抽象方法。 无构造函数,使用构造(空白)代码块进行初始化
- 当所在的方法的形参需要被内部类里面使用时,该形参必须为final,为了拷贝引用避免引用值发生改变
稍微说下new时的情况:
new 一个匿名内部类、接口或者抽象类实际上是执行3步的合并,即:
a.先定义一个子类,让该子类继承上述接口或实现上述抽象类;
b.然后new一个该子类的对象;
c.将该子类的一个引用赋值给接口或者抽象类变量(它是依据java多态特性:父类指向子类的引用)。
所以我个人觉得new不是对抽象类(普通类)或接口直接new的,而是对继承他的子类new的。它的名字是外部类名字$1,如Test$1
为什么我们使用匿名内部类:
- 实现伪多重继承
- 方便定义回调
- 对于其他类来说能够隐藏起来
PS.
内部类的介绍
加深理解匿名内部类
形参为什么是final详解
阅读全文
0 0
- 匿名内部类特点及注意
- 匿名内部类的特点
- Java内部类及匿名内部类
- 【内部类】匿名内部类及应用
- Java之内部类及匿名内部类
- 匿名内部类需要注意的事项
- 内部类的编码及使用,包括成员内部类,局部内部类,匿名内部类
- 内部类及匿名内部类的使用实例
- 内部类、匿名内部类、异常及异常处理
- 内部类及匿名内部类的详细描述
- JAVA-内部类及匿名内部类解读
- Java 内部类特点及用法
- 包装类及匿名内部类
- JAVA中局部内部类和匿名内部类的特点和作用?
- 内部类、匿名内部类
- 内部类、匿名内部类
- 内部类,匿名内部类
- 内部类(匿名内部类)
- 简单的SpringMVC搭建
- 【机器学习实战】第5章 Logistic回归
- easy ui动态添加菜单
- ubuntu 安装和卸载mysql
- Git Commit failed
- 匿名内部类特点及注意
- java String.split()函数的用法分析
- 51nod 1223 分数等式的数量
- E
- C++引用详解
- 【机器学习实战】第6章 支持向量机(Support Vector Machine / SVM)
- 讲讲 java的Number类
- I
- 《3D山地赛车》游戏-网络部分(一)