Java内部类
Posted 未夏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java内部类相关的知识,希望对你有一定的参考价值。
内部类的作用
Java是单继承,它通过接口实现了多重继承。当只有抽象类或具体类,而没有接口时,可以用匿名内部类实现多重继承。
内部类分类
- 普通内部类
- 匿名内部类
- 嵌套类
匿名内部类
public class Demo {
prvivate int n;
public E make() {
return new E() {...};
}
}
make方法的return语句意为:根据方法体实例化对象,然后将其向上转型为基类E的引用。
如果我们要在匿名内部类的方法体内部使用外部类的成员引用,则必须将此引用用final
修饰。
通过匿名内部类实现多重继承与接口有所差异:通过多个接口继承产生的实例化对象可以向上转型为多个目标接口;而匿名内部类产生的实例化对象只能向上转型为一个基类引用。即通过匿名内部类的多重继承是一个子类对一个基类,接口则是一个子类对多个接口。
嵌套类
用static声明的内部类,这通常称为嵌套类。
创建嵌套类对象不需要其外围类的对象;不能从嵌套类的对象中访问非静态的外围类对象。
以上是关于Java内部类的主要内容,如果未能解决你的问题,请参考以下文章