當前位置:首頁 » 密碼管理 » java子類訪問父類的變數么

java子類訪問父類的變數么

發布時間: 2024-03-20 07:27:31

java中為什麼子類仍然可以通過繼承公共方法訪問父類的私有變數

那是因為父類中的私有變數在父類中被方法調用了,當子類執行的時候回默認執行父類中的構造方法,所以是可以的,舉例:

  • 父類

public class A {

private int x =5;

public void setX(int x) { this.x = x; }

public int getX() { return this.x; }

}

  • 子類

public class B extends A { }

這個時候如果通過「B.getX();」輸出的結果就是:5;

Ⅱ JAVA中子類引用父類成員變數

因為 private double chang; private double kuan; 私有變數只能在類內部訪問,子類是不能訪問的所以
super.chang=a;super.kuan=a;不行,而且Rectangle沒有無參構造方法,所以必須用super(a,a)來實例化。
如果想super.chang=a;super.kuan=a;的還 先把private 改成protected 這樣子類才能訪問的到。另外再給Rectangle加無參構造方法,這樣才能不通過super(a,a)來實例化父類

Ⅲ java 中Private變數如何在子類中訪問

子類是不能夠直接訪問父類中的private變數的

可行的解決方法有:

①將變數的訪問許可權修飾詞改為public或者protected或者default(什麼都不寫)

②在父類中寫一個public的成員方法獲得private變數的值

示例代碼如下:

用這種方法是比較安全的,變數控制為私有,通過get方法得到它的值,通過set方法修改它的值

Ⅳ 關於子類訪問父類私有成員變數問題,大神來看看

樓上說錯了,就只有一個B實例,沒有A實例。

繼承的概念,就是把父類的所有東西都繼承下來了,包括A類的x成員變數和所有方法,只是在B類里無法直接訪問x變數而已。

所以創建的B實例的內存里,也是有x,並為它分配了內存空間的

熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:627
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:356
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:73
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:297
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:787
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:337
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:202
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:800
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:356
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:582