Я пытался найти способ создать метод интерфейса/абстрактного с помощью класса «Объявление/расширение» как тип возврата. (Например, класс расширяет интерфейс, и этот метод должен вернуть объект класса). < /p>
Теперь я нашел какой -то пост, на который компилятор не будет жаловаться на что -то подобное, но JVM не может справиться с такой вещью, что означает, что эта механика просто не существует в Java. < /p>
, поэтому я вышел из следующей идеи, от того, что я не знаю. (например, это вызовет цикл) < /p>
public interface ISomeInterface {
public T get();
}
< /code>
Это означает, что вы можете использовать его таким образом. Хотя это не заставляет внешнего пользователя использовать расширенный класс, он, по крайней мере, дает возможность сделать это, если предпочтительнее: < /p>
public class ExtendingClass implements ISomeInterface{
@Override
public ExtendingClass get(){}
}
< /code>
Теперь это не дает компилятора или ошибки во время выполнения, но я обеспокоен, если это создаст какие -либо проблемы, если он широко используется. (Любая другая обратная связь также приветствуется).
Подробнее здесь: https://stackoverflow.com/questions/363 ... act-method