Возможно, вы найдете это более эффективным.
Определите ваш родительский класс с помощью метода getName. Обратите внимание, что это может быть общедоступным, если вы хотите, чтобы ваш класс модели представлял свойство Name, в противном случае вы можете сохранить его как «защищенный», как я здесь. «Защищенный» будет держать метод видимым внутри этого класса и любых производных (дочерних) классов.
public class Model {
private static String MODEL_NAME = "Model";
protected String getModelName(){
return MODEL_NAME;
}
}
Затем определите «переопределение» для метода name вашего дочернего класса:
public class EventModel extends Model
{
private static String MODEL_NAME = "events";
@Override // Tells the compiler that this method OVERRIDES the parent method
public String getModelName(){
return MODEL_NAME;
}
}
Это компилирует и работает так, как я подозреваю, вы пытаетесь достичь. , .
РЕДАКТИРОВАТЬ: Ооо. СЕЙЧАС я вижу проблему. Пропустил, что вам нужно сослаться на это из статического метода. , ,