匿名内部类的demo演示(匿名内部类持有外部类的实例引用)
2017-03-22 10:17
190 查看
匿名内部类是在抽象类和接口的基础之上发展起来的。
Java代码
package com.iflytek.innerclass;
/**
* @author xudongwang 2012-1-11
*
* Email:xdwangiflytek@gmail.com
*/
public class NoNameClass01 {
public static void main(String[] args) {
new X().fun2();
}
}
interface A {
public void fun();
}
class B implements A {
public void fun() {
System.out.println("Hello 准备匿名内部类");
}
}
class X {
public void fun1(A a) {
a.fun();
}
public void fun2() {
this.fun1(new B());
}
}
呵呵,此时就可以使用匿名内部类:
Java代码
package com.iflytek.innerclass;
/**
* @author xudongwang 2012-1-11
*
* Email:xdwangiflytek@gmail.com
*/
public class NoNameClass02 {
public static void main(String[] args) {
new XX().fun2();
}
}
interface AA {
public void fun();
}
class XX {
public void fun1(AA a) {
a.fun();
}
public void fun2() {
this.fun1(new AA() {
public void fun() {
System.out.println("Hello 准备匿名内部类");
}
});
}
}
http://blog.csdn.net/zzjjiandan/article/details/9189943
相关文章推荐
- 非静态内部类、非静态匿名内部类会持有外部对象的引用
- 匿名内部类使用了一个在其外部定义的对象,为什么编译器会要求其参数引用是final呢
- 匿名内部类引用外部对象要加final修饰符的原因
- 匿名内部类持外部引用造成内存泄漏问题
- 内部类笔记1-静态内部类持有外部类引用验证
- 匿名内部类访问外部类的实例方法的局部变量时,局部变量必须是final
- 内部类访问外部类的变量必须是final吗,java静态方法中不能引用非静态变量,静态方法中不能创建内部类的实例
- Java 匿名内部类中的外部引用为什么必须是 final 的?
- 关于匿名内部类和局部内部类的外部引用必须是final的疑问
- 匿名内部类引用其创建类的实例
- 为什么在匿名内部类中引用外部对象要加final修饰符
- 匿名内部类为什么有时候引用外部成员需要final
- 外部类、内部类、匿名内部类之间关系模型
- Kotlin 匿名内部类对象引用当前Activity的this用法
- Java通过继承外部类来建立该外部类的protected内部类的实例(转)
- 非静态的内部类会持有外部类的一个隐式引用
- 匿名内部类是什么?为什么其访问外部变量必须是finally的?
- Java 匿名内部类详解及实例代码
- c#实例化继承类,必须对被继承类的程序集做引用 .net core Redis分布式缓存客户端实现逻辑分析及示例demo 数据库笔记之索引和事务 centos 7下安装python 3.6笔记 你大波哥~ C#开源框架(转载) JSON C# Class Generator ---由json字符串生成C#实体类的工具
- 内部类,匿名内部类能够使用外部成员的原因