建立內部類的例項物件,必須建立外部類的例項物件

2022-03-15 11:14:49 字數 362 閱讀 8232

outer類中定義了乙個成員內部類inner,需要在main()方法中建立inner類例項物件,方法:outer.inner in  = new outer().new inner();

內部類可以引用全域性變數;

靜態方法建立例項內部類物件 內部類的最重要的乙個特點就是它可以直接訪問它外部類的成員變數。成員變數是 物件身上的。物件建立完成了,才會為成員變數分配空間。能呼叫成員變數, 意味著一定有了例項物件. main方法是靜態的,它執行的時候可以不用建立那個物件。這就矛盾了。 main方法執行的時候沒有任何外部類的例項物件。我們的內部類的例項物件建立了 它又可以訪問外部類的成員變數,外部類的例項物件在哪兒了? 所以這個原因,要想建立內部類的例項物件,必須建立外部類的例項物件

java內部類的建立方式

內部類我們在程式開發中經常會用到,這裡通過普通內部類,靜態內部類和方法內部類三種方式來介紹一下內部類的建立方式。1.普通內部類的建立 普通內部類的定義 class outer public class testdemo 通過上面的 可以看出來,普通的內部類不必要通過外部類 顯示定義私有屬性的get和...

在外部類的靜態方法中不能建立內部類的例項物件

本來想在static的main方法裡面建立這個內部類的物件 idea提示報錯 因為內部類的特點就是,內部類持有外部類的引用,可以訪問外部類的屬性和方法,但是如果是在外部類的靜態方法中進行的建立,那麼就會有問題,因為外部類的靜態方法建立的時候,是不需要外部類物件存在的。比如說直接 外部類類名.靜態方法...

Java物件導向 例項內部類和靜態內部類分析

沒有使用static修飾的內部類,說明內部類屬於外部類的物件,不屬於外部類本身。特點 1 建立例項內部類前,必須存在外部類物件,通過外部類鍍鋅建立內部類物件 當存在內部類物件時,一定存在外部類物件 outter.inner in new outter new inner 2 例項內部類的例項自動持有...