#22 - Интерфейсы (interface)

#22 - Интерфейсы (interface)

Интерфейсы являются важными конструкциями в языке Java. За счёт интерфейсов можно описывать методы, что должны быть реализованы во всех классах.

Видеоурок

Во многих языках программирования реализована возможность множественного наследования, когда один класс имеет несколько классов родителей. В языке 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 месяца

Также стоит посмотреть

Изучение JavaScript от нуля до гуру
21 урок
Изучение библиотек jQuery
24 урока
Уроки Java для профессионалов
14 уроков
Разработка Андроид программы с базой данных
6 уроков
Уроки Angular для начинающих
7 уроков
Java до профи: основы, UI дизайн и Android разработка
Комментарии для сайта Cackle