我有一个抽象的父类,有多个孩子.我希望孩子能够拥有一个对于该孩子的每个实例都相同的变量.我宁愿不将一个构造函数传递给孩子来告诉它它的名字,因为当它可以被硬编码时,它看起来很愚蠢.从我所读到的做下面的"隐藏"父实例变量,并没有按我的意愿工作.
public abstract class Parent {
public String name = "the parent";
public getName(name);
}
public class Child1 extends Parent {
public String name = "Jon";
}
public class Child2 extends Parent {
public String name = "Mary";
}
Child1 c = new Child1();
c.getName(); // want this to return "Jon", but instead returns "the parent".
Run Code Online (Sandbox Code Playgroud)
要清楚,基本上我想要的是像c.getClass().getName(),但我不希望结果依赖于类名,而是依赖于硬编码值.
谢谢