2 回答

TA貢獻(xiàn)1893條經(jīng)驗(yàn) 獲得超10個贊
有class修飾符,用來創(chuàng)建一個類,其中有成員函數(shù)和成員變量。通過new一個對象出來,通過對象來實(shí)現(xiàn)這個類

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個贊
是叫Inner Class啦。
和變量差不多。隨便在類中什么地方寫。也和變量一樣有作用域。在函數(shù)內(nèi)部寫的類,在函數(shù)外就不可調(diào)用了。
public class A {
private class B {}
public static void main(String[] args) {
new A().new B();
}
}
這樣的內(nèi)部類中不能含有任何static成員。你也看到了,要生成B的實(shí)例必須建立在A實(shí)例的基礎(chǔ)上。因?yàn)槊總€內(nèi)部類都必須擁有一個指向外部類的指針。這樣才能訪問外部類的變量,private的也行。
把內(nèi)部類聲明為static,那么就不會有一個指向外部類的指針。自然也訪問不了外部類的變量,除非外部變量是static的。也自然不需要先生成外部類的實(shí)例才能生成內(nèi)部類的實(shí)例。這樣的內(nèi)部類叫做Nested Class
Thinking in Java里講的很清楚了。自己去看看吧。
添加回答
舉報(bào)