我写了一段代码如下: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”,因为您从未将其设置为其他任何对象。 –