小编Tyl*_*ler的帖子

Java继承......困惑

我有一个抽象的父类,有多个孩子.我希望孩子能够拥有一个对于该孩子的每个实例都相同的变量.我宁愿不将一个构造函数传递给孩子来告诉它它的名字,因为当它可以被硬编码时,它看起来很愚蠢.从我所读到的做下面的"隐藏"父实例变量,并没有按我的意愿工作.

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(),但我不希望结果依赖于类名,而是依赖于硬编码值.

谢谢

java inheritance

1
推荐指数
1
解决办法
185
查看次数

标签 统计

inheritance ×1

java ×1