interface
Используется, когда вы хотите, чтобы набор программ выполнял определенный тренд или приобретал общий набор свойств. Эти свойства объявляются как методы в interface
. Интерфейс может иметь только абстрактные методы, и он наследует эти методы и определяет их там, где находится линия наследования.
Абстрактный метод будет выглядеть следующим образом:
public void hello();
Он не имеет тела метода. Вам нужно наследовать его и определить тело метода.
Рассмотрим interface animal
.
public interface animals
{
public void walks();
public void eats();
public void sleeps();
public void dog_breed();
public void barks();
}
Рассмотрим 2 класса с именем Jimmy_the_dog
и Tom_the_cat
.
Мы хотели бы, чтобы эти 2 класса реализовали interface animal
, чтобы придать им свойства животных. Но проблема заключается в абстрактных методах barks()
и dog_breed()
в помехах. Собака может иметь все свойства, упомянутые в животном интерфейса, но для кошки не имеет смысла наследовать методы barks()
и dog_breed()
.
Здесь мы разделим interface
. Здесь мы разделим интерфейс животного на интерфейс собаки и интерфейс животного. Следовательно, свойства в животном-интерфейсе станут более распространенными для животных в целом.
public interface animals
{
public void walks();
public void eats();
public void sleeps();
}
public interface dog
{
public void barks();
public void dog_breed();
}
Как работать с вышеуказанными двумя интерфейсами?
Jimmy_the_dog реализует оба интерфейса, чтобы приобрести собаку специфические свойства. Любое животное, которое является собакой, может это сделать. Точно так же вы могли бы сделать специальные для кошки интерфейсы для всех кошек в мире.
выше интерфейс может работать следующим образом тоже:
public interface dog extends animal
public class Jimmy_the_dog implements dog
Jimmy_the_dog
получает все свойства животных и собак.
Примечание:
Класс может расширить один класс только, но он может реализовать несколько интерфейсов.
Разделить интерфейс. – saka1029
Мне не разрешено разделить мой интерфейс. –
Почему бы и нет? Это академическое задание? Если да, то какой полный текст проблемы –