一、成員內部類(最常見的)
**:
public class normalinnerclass
private normalinnerclass()
//內部類
class inner
} public static void main(string args)
1.如何建立?
(1)先建立外部類的物件。
(2)再通過外部類物件來建立內部類物件。
2.規則以及特點:
(1)內部類可以無限制訪問外部類的所有方法,成員變數。(不管修飾符)
但是是通過例項化外部類物件而得到的。
(2)不存在任何用static修飾的方法和成員變數。
二、區域性內部類
**:
public class methodinnerclass
public void innerclass()
} inner inner = new inner();
inner.testin(); }
public static void main(string args)
1.如何建立區域性內部內物件?
(1)直接在方法裡面建立內部類物件
(就是普通的建立物件的方法)
2.規則以及特點:
(1)作用域只存在於方法裡面,不能存在任何static修飾的變數以及方法。
三、靜態內部類
**如下:
public class staticinnerclass
static class inner
} public static void main(string args)
}
1.如何建立區域性內部內物件?
(1)直接建立,因為他是靜態內部類
方法:外部名.內部類名 xx = new 外部名.內部類名();
2.規則以及特點:
(1) 它不能使用任何外圍類的非static成員變數和方法。
(2) 在生成外部類的時候實際上靜態內部類也保留了乙個引用。
四、總結
1.其實如何理解內部類呢,就是類的乙個變數,因為他在類中,所以可以使用類中所有的方法和變數。
2.同時這些內部類也可以繼承,或是實現介面。
五、匿名內部類
當我們需要建立乙個介面物件時,而該類只使用一次時,可以使用匿名內部類。
他要求實現介面裡面的所有方法。
java 四種內部類和內部介面
常規內部類 常規內部類沒有用static修飾且定義在在外部類類體中。1.常規內部類中的方法可以直接使用外部類的例項變數和例項方法。2.在常規內部類中可以直接用內部類建立物件 public class myouter public void outermethod public void makein...
Java四種內部類
參考 四種內部類 常規內部類 靜態內部類 區域性內部類 匿名內部類 1 常規內部類 常規內部類沒有用static修飾且定義在外部類類體中,常規內部類可以理解為類中普通的成員變數 1 常規內部類可以訪問外部類的private成員變數和方法 2 如果要訪問內部類,首先要例項化外部類outer,然後呼叫i...
四種內部類,(Inner Class)
內部類 定義在內部的類,不一定非得是定義在類的內部,可以分為4種型別。第一 靜態內部類 定義在類中 靜態的內部類與其外部類是編譯成兩個.class檔案的,注意的是外部類是不可以定義為靜態的。為什麼外部的類不可以定義為靜態的 解釋 靜態類是沒有實際意義的,而且執行初始化還要占用大量記憶體,而且假如有靜...