Скажем, у меня есть классы, объявленные так:
public abstract class IdentifiableEntity {
public boolean validate() {
return true;
}
}
public class PreferenceCategory extends IdentifiableEntity {
public boolean validate() {
return true;
}
}
Теперь, допустим, у меня создана переменная PreferenceCategory, и я хочу вызвать метод IdentifiableEntity.validate (), , а не метод PreferenceCategory.validate ().
Я бы подумал, что смогу сделать это с приведением (см. ниже), но он по-прежнему вызывает переопределенный метод:
PreferenceCategory cat = new PreferenceCategory();
// this calls PreferenceCategory.validate(), not what I want
((IdentifiableEntity)cat).validate();
Есть лиспособ сделать это?