要想使用new生成一个内部类的实例,需要先指向一个外部类的实例,也就是先生成外部类的实例,
因为内部类可以调用外部类的成员,当没有外部类实例的时候也就没有这些成员的内存空间,内部类在实例化的时候,调用外部类的成员就会出错,所以需要使用外部类的实例 + 点 + new 的方式实例化一个新的内部类
1
2
3
4
5
6
7
8
9
10
11
12
13
|
class TestInner{ public static void main(String [] args) { Outer outer = new Outer(); Outer.Inner inner = outer. new Inner(); } } |
在内部类(Inner Class),可以随意的访问外部类的成员,这可让我们更好地组织管理我们的代码,增强代码的可读性。
静态内部类可以直接创建对象new B.C();
如果内部类不是静态的,那就得这样
1
2
|
A a = new A(); A.B b = a. new B(); |
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/xidiancoder/article/details/56277105