@ josh.trow Я бы лучше съел шпинат (детка, с бальзамическим винегретом, пожалуйста), чем отлаживал код, который злоупотребляет рефлексией. К сожалению, последнее занятие окупается лучше. :)

я есть абстрактный родительский класс, который имеет несколько детей. Я бы хотел, чтобы у ребенка была переменная, одинаковая для каждого экземпляра этого ребенка. Я бы предпочел не передавать конструктор ребенку, называя его именем, потому что это просто глупо, когда его можно жестко закодировать. Из того, что я прочитал, следующее «скрывает» родительскую переменную экземпляра и работает не так, как я хочу.

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".

Чтобы было ясно, в основном я хочу что-то вроде c.getClass (). GetName (), но я не хочу, чтобы результат этого зависел от имени класса, а скорее от жестко заданного значения.

Спасибо

Ответы на вопрос(8)

Ваш ответ на вопрос