我寫了一段代碼如下:Java如何使用子類的某個函數()中的變量?
class MyParent {
String a = "abcdefg";
String b;
public void print() {
b = "ABCDEFG";
System.out.println(a);
}
}
class MyChild extends MyParent {
String c = super.b;
public void print2() {
System.out.println(c);
}
}
public class Parent {
public static void main(String args[]) {
MyParent mp = new MyParent();
mp.print();
MyChild mc = new MyChild();
mc.print2();
}
}
有兩類,他們是父母&孩子。 在class MyParent
中聲明瞭b
,並在函數print()
中給出了一個值。
我想在子類MyChild
中打印b
。但是如果我運行代碼,它可以正確打印,但b
顯示null
。
我是Java新手。請幫助我。
UPDATE
謝謝大家回答我的問題。我找到了解決方案。
我用最簡單的方法。我將它改爲**static String b**
。
靜態使我的論點可以四處使用。
但我不知道使用數據聲明的確切方式。所以我會繼續學習。
https://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html,http://www.javaworld.com/article/2987426/core-java/java-101-繼承功能於Java的部分1。html –
您已經創建了兩個完全獨立的對象 - 「mp.b」將是「ABCDFEF」,但「mc.b」是「null」,因爲您從未將其設置爲其他任何對象。 –