要想使用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