Ошибка говорит вам все.Реализация интерфейса означает, что вы держите свой класс в соответствии с контрактом интерфейса.Интерфейс гарантирует: Каждый неабстрактный класс, который реализует меня, обеспечивает реализацию для всех абстрактных методов, которые я объявляю.Это может быть связано с тем, что они его содержат, или путем наследования от родительского класса.
interface Animal{
public boolean roar();
// public boolean gender(); <-- this method
}
Если вы добавите этот второй метод, вам также потребуется предоставить реализацию:
class Cat implements Animal{
public boolean roar(){
return true;
}
public boolean gender() {
return true;
}
}
Это решит вашу проблему.Но иметь boolean
для 'roar
' или 'gender
' кажется довольно странным.