Я пытаюсь реализовать интерфейс, как это:Почему мои методы интерфейса не могут быть переопределены?
public interface Human{
void talk();
}
public class Ame implements Human{
public static void talk(){
System.out.println("Speak English");
}
}
public class Chin implements Human{
public static void talk(){
System.out.println("Speak Chinese");
}
}
public class test {
public static void main(String[] args){
Chin c = new Chin();
c.talk();
Ame a = new Ame();
a.talk();
}
}
Но это показывает ошибку:
Ame и Чин говорить() не может реализовать человеческий разговор().
Методы переопределяются как статические.
Пожалуйста, скажите мне, почему это заглохло и как исправить эту ошибку.
Почему вы пытаетесь использовать статические методы? – John3136
У вас не может быть статический и нестатический метод с тем же именем и сигнатурой. И статический метод не реализует интерфейс. – Thilo
Мне просто интересно, почему Human talk() нельзя переопределить как static talk(). – AngusMurphy