我想實現這樣的接口:爲什麼我的界面方法不能被覆蓋?
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();
}
}
但它顯示錯誤:
阿梅和Chin談()無法實現人的談話()。
方法被重寫爲靜態。
請告訴我爲什麼發生這種情況,以及如何解決這個錯誤。
爲什麼你要使用靜態方法? – John3136
您不能擁有同名和簽名的靜態和非靜態方法。而靜態方法不會實現該接口。 – Thilo
我只是好奇爲什麼人類的談話()不能被重寫爲靜態談話()。 – AngusMurphy