課程
/后端開發
/Java
/Java入門第二季 升級版
?靜態內部類不能直接訪問外部類的非靜態成員,但可以通過?new 外部類().成員?的方式訪問?
2017-10-10
源自:Java入門第二季 升級版 7-7
正在回答
package imooc_2.encapsulation.lnnerclass;
public class StaticInnerClass { ? ?private static int Score=84; ? ?private ?int Age=20; ? ?//靜態內部類 ? ?public static class Inner{ ? ? ? ?private int sum=10; ? ? ? ?int a=21; ? ? ? ?public void show(){ ? ? ? ? ? ?StaticInnerClass staticInnerClass=new StaticInnerClass(); ? ? ? ? ? ?System.out.println("靜態內部類調用外部類的靜態成員變量"+Score); ? ? ? ? ? ?System.out.println("靜態內部類調用外類的成員變量"+new StaticInnerClass().Age); ? ? ? ? ? ?System.out.println("靜態內部類調用外類的成員變量"+staticInnerClass.Age); ? ? ? ? ? ?System.out.println("靜態內部類調用內部類中的靜態成員變量"+sum); ? ? ? ? ? ?System.out.println("靜態內部類調用內部類中的成員變量"+a); ? ? ? ?} ? ?} ? ?public static void main(String[] args) { ? ? ? ?Inner inner=new Inner();//靜態內部類能直接創建 ? ? ? ?inner.show(); ? ?}}
其實很簡單的道理,就是static這個關鍵字的用法。
public static class ,不能訪問 public class。但如果非要訪問的話,就通過創建新的對象來引用進行操作。
內部類 對象名 = new 內部類();//這里創建了外部類的對象,就可以進行訪問了。
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
2 回答看不懂這兩個代碼
1 回答能不能通過一句代碼 實現子類里面所有的方法?
2 回答有誰用異常處理做過完善過代碼嗎 能不能發出來讓我看一下
3 回答完美呈現輸出
2 回答能不能幫我看看代碼有沒有什么問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-12-15
package imooc_2.encapsulation.lnnerclass;
public class StaticInnerClass {
? ?private static int Score=84;
? ?private ?int Age=20;
? ?//靜態內部類
? ?public static class Inner{
? ? ? ?private int sum=10;
? ? ? ?int a=21;
? ? ? ?public void show(){
? ? ? ? ? ?StaticInnerClass staticInnerClass=new StaticInnerClass();
? ? ? ? ? ?System.out.println("靜態內部類調用外部類的靜態成員變量"+Score);
? ? ? ? ? ?System.out.println("靜態內部類調用外類的成員變量"+new StaticInnerClass().Age);
? ? ? ? ? ?System.out.println("靜態內部類調用外類的成員變量"+staticInnerClass.Age);
? ? ? ? ? ?System.out.println("靜態內部類調用內部類中的靜態成員變量"+sum);
? ? ? ? ? ?System.out.println("靜態內部類調用內部類中的成員變量"+a);
? ? ? ?}
? ?}
? ?public static void main(String[] args) {
? ? ? ?Inner inner=new Inner();//靜態內部類能直接創建
? ? ? ?inner.show();
? ?}
}
2017-10-10
其實很簡單的道理,就是static這個關鍵字的用法。
public static class ,不能訪問 public class。但如果非要訪問的話,就通過創建新的對象來引用進行操作。
內部類 對象名 = new 內部類();//這里創建了外部類的對象,就可以進行訪問了。