2020-10-15
Java培訓
好程序員Java培訓分享static變量是否能繼承的詳細介紹,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,下面我們一起來看一下吧。
代碼如下
//父類
package com.xujingyang.test;
public class Father {
public static String staticString="父類中的靜態變量";
public String str="父類中的非靜態變量";
public static void staticMethod(){
System.out.println("父類中的靜態方法");
}
public void nostaticMethod() {
System.out.println("父類中的非靜態方法");
}
}
//子類
package com.xujingyang.test;
public class Son extends Father {
public static String staticString="子類中的靜態變量";
public String str="子類中的非靜態變量";
public static void staticMethod(){
System.out.println("子類中的靜態方法");
}
public void nostaticMethod() {
System.out.println("子類中的非靜態方法");
}
}
//子類
package com.xujingyang.test;
public class A extends Father{
}
//測試方法
package com.xujingyang.test;
public class Test {
public static void main(String[] args) {
Son son=new Son();
System.out.println(son.str);
System.out.println(son.staticString);
son.staticMethod();
son.nostaticMethod();
System.out.println("==============================");
Father f=new Son();
System.out.println(f.str);
System.out.println(f.staticString);
f.staticMethod();
f.nostaticMethod();
System.out.println("==============================");
A f2=new A();
System.out.println(f2.str);
System.out.println(f2.staticString);
f2.staticMethod();
f2.nostaticMethod();
}
}
結果如下:
得出如下結論:父類中的靜態成員變量和方法是可以被子類繼承的,但是不能被自己重寫,無法形成多態.
我發現,變量時無法形成多態的,網上別人說,子類把父類的變量繼承過來,內存中會存在兩個同名的變量,父類的變量會出現在子類變量之前.如下圖:
以上就是關于好程序員Java培訓之淺談static變量能繼承嗎的全部內容,希望對大家的學習有所幫助,想要了解更多關于Java開發方面內容的小伙伴,請關注好程序員Java培訓官網、微信公眾號等平臺。
開班時間:2021-04-12(深圳)
開班盛況開班時間:2021-05-17(北京)
開班盛況開班時間:2021-03-22(杭州)
開班盛況開班時間:2021-04-26(北京)
開班盛況開班時間:2021-05-10(北京)
開班盛況開班時間:2021-02-22(北京)
開班盛況開班時間:2021-07-12(北京)
預約報名開班時間:2020-09-21(上海)
開班盛況開班時間:2021-07-12(北京)
預約報名開班時間:2019-07-22(北京)
開班盛況Copyright 2011-2023 北京千鋒互聯科技有限公司 .All Right 京ICP備12003911號-5 京公網安備 11010802035720號