У меня есть вопрос относительно структуры моих классов в Java:как избежать использования пустого метода реализации?
У меня есть первый класс: MyClass, который является абстрактным
public abstract class MyClass
{
protected void abstract monitor();
}
то у меня есть абстрактный итератор на нем
public abstract class MyClassIterator<T> extends MyClass
{
protected void abstract monitor(T data);
}
На практике я буду создавать классы, которые либо наследуются от MyClass, либо MyClassIterator.
Я хочу, чтобы убедиться, что все экземпляры MyClass реализации монитора, но для итераторов те, как я могу избежать вставляя что-то вроде
protected void monitor() {};
просто реализовать:/
Спасибо за любую идею:)
Имеет ли 'MyClassIterator' ** ** расширение' MyClass'? – Mena
Это не в вашем распоряжении. Реализация класса может иметь любую реализацию или пустой блок кода, как вы сказали 'protected void monitor() {};' – rajuGT
@Mena: это хороший вопрос, в настоящее время это то, что было сделано, поскольку MyClass определяет методы, которые будут также использоваться в итератор, поэтому нам нужно будет дублировать код в противном случае: S – Orpheo