當前位置:首頁 » 密碼管理 » 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,並為它分配了內存空間的

熱點內容
星途買哪個配置啊 發布:2025-07-15 11:14:35 瀏覽:521
蘋果手機刪除緩存文件 發布:2025-07-15 11:08:01 瀏覽:957
安卓手機桌面變大軟體怎麼恢復 發布:2025-07-15 11:07:47 瀏覽:605
酒店密碼門禁是什麼牌子 發布:2025-07-15 11:06:56 瀏覽:968
下載winrar解壓縮 發布:2025-07-15 10:59:36 瀏覽:314
光遇無翼號怎麼弄安卓 發布:2025-07-15 10:45:59 瀏覽:365
什麼是法人賬號密碼 發布:2025-07-15 10:34:59 瀏覽:876
編程題抽獎 發布:2025-07-15 10:34:00 瀏覽:629
linux手動編譯的內核怎麼刪 發布:2025-07-15 10:31:56 瀏覽:96
存儲行業發展趨勢 發布:2025-07-15 10:25:22 瀏覽:243