Как создать интерфейс, который, когда Overridden может иметь разные типы? Иногда я хотел бы, чтобы метод принимал элемент типа «HtmlPage», а иногда я хотел бы, чтобы он взял тип «Документ». Позже они могут измениться на еще большее количество типов.Java Создать метод в интерфейсе и изменить тип параметра
Пример:
public interface MyInterface{
void checkThis() throws Exception;
Output Show(Input input, String url) throws Exception;
}
public class HeadLevel extends MyInterface<HtmlPage,String>{
Output scrape(HtmlPage page, String url) throws Exception;
}
public class MyClass implements HeadLevel<Output>{
@Override
public void checkThis(Document page, String url){
}
}
Я имею в виду то, как это должно быть достижимо. Я попытался оглянуться, используя ключевые слова «Перегрузка» и «Переопределить» в моих поисках, но не могу найти что-то, что может работать так. Как вы видите, «MyClass» переопределил метод и определил используемые параметры.
Любая помощь в том, как это сделать или почему вы не можете этого сделать, очень ценится. С дополнительной информацией, которую я получаю для этого, я обновлю это сообщение и сделаю это лучше, я просто сейчас не знаю, как это назвать.
Прежде всего вашего синтаксиса является неправильным. Второй класс может расширять другой класс, а не интерфейс, а класс фактически реализует интерфейс. – Unknown
Это просто общее сходство с моим проектом. – L1ghtk3ira
Это технически невозможно, так как 'checkThis (Document, String)' не поддерживает и не может переопределить 'checkThis()'. Однако, если вы сообщите нам, что вы пытаетесь сделать с этим, мы могли бы найти способ обхода. – Zircon