static變數是否能繼承詳細介紹
好程式設計師 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();
}
}
結果如下:
得出如下結論: 父類中的靜態成員變數和方法是可以被子類繼承的 , 但是不能被自己重寫 , 無法形成多型 .
我發現, 變數時無法形成多型的 , 網上別人說 , 子類把父類的變數繼承過來 , 記憶體中會存在兩個同名的變數 , 父類的變數會出現在子類變數之前 . 如下圖 :
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2727047/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 詳細介紹Python類的繼承與多型Python繼承多型
- 最佳化ySQL系統變數詳細介紹SQL變數
- 史上最為詳細的javascript繼承JavaScript繼承
- javascript繼承的實現方式介紹JavaScript繼承
- static方法在繼承中如何使用?繼承
- javascript this詳細介紹JavaScript
- JDBC 詳細介紹JDBC
- Kafka詳細介紹Kafka
- Git詳細介紹Git
- javascript物件導向繼承簡單介紹JavaScript物件繼承
- javascript實現繼承方式簡單介紹JavaScript繼承
- Go Channel 詳細介紹Go
- Nacos 介面詳細介紹
- MQ詳細命令介紹MQ
- Recovery命令詳細介紹
- Vmstat 命令詳細介紹
- C++繼承詳解:共有(public)繼承,私有(private)繼承,保護(protected)繼承C++繼承
- static變數變數
- 三種繼承的方法:public 繼承/private繼承/protected繼承詳解及區別繼承
- 18、繼承以及繼承中成員變數和成員方法的重名問題繼承變數
- javascript類式繼承設計模式簡單介紹JavaScript繼承設計模式
- javascript建構函式的繼承簡單介紹JavaScript函式繼承
- javascript非建構函式繼承簡單介紹JavaScript函式繼承
- Flutter系列(一)——詳細介紹Flutter
- Nginx服務詳細介紹Nginx
- python字典詳細介紹Python
- Spring bean詳細介紹SpringBean
- Http Module 的詳細介紹HTTP
- Java異常詳細介紹Java
- 【SCN】Oracle SCN 詳細介紹Oracle
- SOLIDWORKS API詳細介紹SolidAPI
- Webpack 打包 Javascript 詳細介紹WebJavaScript
- mysql binlog詳細介紹MySql
- java泛型詳細介紹Java泛型
- 【工具】Sublime使用詳細介紹
- asmcmd工具的詳細介紹ASM
- json詳細介紹(for Java)JSONJava
- Mysqldump工具的詳細介紹MySql