
#19 – Интерфейсы в Джава
Видеоурок
Во многих языках программирования реализована возможность множественного наследования, когда один класс имеет несколько классов родителей. В языке Java такой функциональности нет и чтобы решить эту проблему можно использовать интерфейсы.
Что такое интерфейс?
Интерфейсы очень схожи с абстрактными классами и предоставляют лишь методы без реализации.
В интерфейсах можно записать методы, что должны реализовываться во всех классах, использующих интерфейс. Это удобно, ведь за счёт такого функционала мы можем быть уверены в классах и будем знать что они реализовывают все те функции, что мы предусмотрели заранее.
Как создать интерфейс?
Для создания интерфейса используется ключевое слово Interface
:
public interface SomeOne {
void Change (String val);
}
В интерфейсе можно не прописывать модификаторы доступа и по-умолчанию будет проставлен модификатор public.
Для реализации функционала в интерфейсе необходимо создать класс и указать что он является классом, реализующим определенный интерфейс. Для этого после названия класса пропишите слово implements
:
class Person implements SomeOne { // Указали реализацию
String name;
float happiness;
int age;
Person(String name, float happiness, int age) {
this.name = name;
this.happiness = happiness;
this.age = age;
}
// Обязательно должны реализовать все методы из интерфейса
// Для реализации прописываем слово @Override
@Override
public void Change (String val) {
// Функционал может быть любым, но должен соответсовать описанному методу
// К примеру, данная функция ничего не должна возвращать, так как тип данных у неё void
this.name = val;
System.out.print("Теперь человека зовут - " + val);
}
}
Для реализации нескольких интерфейсов их можно прописать через запятую в классе после слова implements
.
Материалы для курса
Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт
Задание к уроку
Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям
Большое задание по курсу
Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца
Также стоит посмотреть