黑馬程序員-內部類

 

 

                                                               ----------  android培訓   java培訓   期待與您交流!------------


  內部類創建後可以直接訪問外部類的任何成員,包括私有,靜態,而外部類要訪問內部類就只能創建內部類對象。

public class Test {
	
	private int a = 0;
	public static void main(String[] args)
	{	
		new Test().new Inner();
	}
	class Inner 
	{
		int a = 1;
		Inner(){
			int a = 2;
			System.out.println(a);
		}
		
	}
}

 

  代碼中的輸出語句只能打印出Inner構造函數中的a,結果爲2.

 

 

public class Test {
	
	private int a = 0;
	public static void main(String[] args)
	{	
		new Test().new Inner();
	}
	class Inner 
	{
		int a = 1;
		Inner(){
			int a = 2;
			System.out.println(this.a);
		}
		
	}
}

 

  代碼中只使用this.變量名,只能夠訪問到本內部類中的a。結果爲1.

public class Test {
	
	private int a = 0;
	public static void main(String[] args)
	{	
		new Test().new Inner();
	}
	class Inner 
	{
		int a = 1;
		Inner(){
			int a = 2;
			System.out.println(Test.this.a);
		}
		
	}
}

 

 

  按照:外部類.this.外部類成員名  的格式才能訪問外部類的成員,輸出爲0;

 

  由於內部類也是成員,所以靜態也可以修飾內部類。

   訪問權限也是同靜態一樣:靜態只能訪問靜態,非靜態可以訪問靜態和非靜態。

 

                                                                    ----------  android培訓   java培訓   期待與您交流!------------

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章