指的是定義在類的內部的類。
定義在類的內部,方法的外部的內部類,稱為成員內部類
指的是定義在方法內的內部類,稱為區域性內部類。
class
}
①如何建立內部類的物件?
外部類類名.內部類類名 物件名稱 = new 外部類().new 內部類();
要產生內部類,首先需要產生外部類(內部類是外部類的乙個成員,對於成員的訪問我們都需要物件)
②對於包含了內部類的類,編譯之後,會產生幾個.class位元組碼檔案?
產生兩個位元組碼檔案
內部類的位元組碼檔案的名稱為外部類$內部類.class
③ 內部類能否訪問外部類的私有的成員屬性?可以
內部類的構成和普通類的構成是一樣,而且內部類能直接訪問外部類的成員,包括私有的成員
④ 內部類能否使用private public protected進行修飾
可以。但是內部類使用private修飾之後,在其他類中訪問是不方便的
⑤對於內部類中宣告的變數,類似於外部類中的區域性變數,只能在內部類中使用,而不能在外部類中使用。
⑥區域性內部類不能在外部產生該內部類的物件,要產生該區域性內部類的物件,只能在方法內部產生。但是對於區域性內部類編譯之後也會產生兩個clas位元組碼檔案。對於區域性內部類,要想使用方法的區域性變數,那麼該變數一定是 final。jdk8 會自動為該變數新增 final 修飾
public class outterclass
public void printinfo()
private class innerclass
public void show()
}public int getnum()
public void setnum(int num)
public outterclass.innerclass getic()
public void setic()
public static void main(string args)
}
public class outterclass2
}methodinnerclass mc = new methodinnerclass();
mc.show2();
}public void demo()
public static void main(string args)
}
public class test
}
java基礎 內部類
一 內部類 將乙個類定義在另乙個類的裡面,對裡面那個類就稱為內部類 內建類,巢狀類 非static內部類可以直接訪問外部類中的成員,包括私有成員。原因 因為內部類中持有了乙個外部類的引用,引用的格式為 外部類名.this 非靜態內部類不能定義static成員 1 內部類定義在外部類的成員位置上 方法...
java基礎《內部類》
一 內部類的訪問規則 1.內部類可以直接訪問外部類中的成員,包括私有 之所以可以直接訪問外部類中的成員,是因為內部類中持有了乙個外部類的引用 格式 外部類名.this 2.外部類要訪問內部類,必須建立內部類物件 訪問格式 1.當內部類定義在外部類的成員位置上,而且非私有,可以在外部其他類中,可以直接...
java基礎 內部類
內部類 一 內部類的訪問規則 1,內部類可以直接訪問外部類中的成員,包括私有。之所以可以直接訪問外部類中的成員,是因為內部類中持有了乙個外部類的引用,格式 外部類名.this 2,外部類要訪問內部類,必須建立內部類物件。例子 class outer static class inner2 publi...