Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Що Таке Інтерфейс? | Інтерфейс
Java ООП
course content

Зміст курсу

Java ООП

Java ООП

1. Як Працювати з IDE?
2. ООП
3. Інтерфейс

book
Що Таке Інтерфейс?

Що робити, якщо нам потрібно успадкуватися від більше ніж одного класу? Java дозволяє це зробити за допомогою інтерфейсів. Незважаючи на назву, інтерфейс дуже схожий на абстрактний клас. Розглянемо оголошення інтерфейсу:

Простими словами, інтерфейс використовується для визначення методів, які клас буде реалізовувати. Інтерфейси мають окремий синтаксис для створення. Якщо для створення класу ми використовували "public class className { }", то синтаксис для створення інтерфейсу виглядає інакше:

InterfaceExample.java

InterfaceExample.java

copy
123456
package com.example; public interface InterfaceExample { void methodName(); String methodThatAcceptsAndReturnsString(String parameter); }
  1. Зверніть увагу на оголошення методу;

  2. Не використовуються модифікатори доступу;

  3. Не надаються тіла методів;

  4. Немає необхідності позначати методи як abstract, оскільки ми працюємо в інтерфейсі;

  5. Не створюються поля в інтерфейсах.

Розглянемо використання Interface на прикладі медіаплеєра. Маємо Interface з назвою MediaPlayer, який містить методи play, pause та stop. Додатково існують два класи, які реалізують цей інтерфейс медіаплеєра — це AudioPlayer та VideoPlayer.

MediaPlayer.java

MediaPlayer.java

AudioPlayer.java

AudioPlayer.java

VideoPlayer.java

VideoPlayer.java

copy
12345
public interface MediaPlayer { void play(); void pause(); void stop(); }

Як ви бачите, ми створили interface та два класи, які реалізують цей інтерфейс. Синтаксис такий самий, як і при перевизначенні абстрактних методів. Ми перевизначили кожен метод для кожного класу, щоб виконувати його власну специфічну функцію.

Однією з особливостей інтерфейсів є те, що ми можемо реалізувати більше ніж один інтерфейс. Розглянемо приклад:

Vehicle.java

Vehicle.java

VehicleInfo.java

VehicleInfo.java

Car.java

Car.java

copy
123456
package vehicle; interface Vehicle { void startEngine(); void stopEngine(); }

Ми створили інтерфейси Vehicle та VehicleInfo. Додатково, ми створили клас Car, який реалізує обидва ці інтерфейси. Таким чином, ми можемо обирати, яку поведінку реалізовувати в класі, що добре доповнює принцип абстракції в об'єктно-орієнтованому програмуванні. Працювати з інтерфейсами дуже зручно, і вони широко використовуються. У наступному розділі ми також розглянемо основні відмінності між інтерфейсом та абстрактним класом і дізнаємося, який з них краще використовувати на практиці!

1. Що таке інтерфейс у Java?

2. Чи може клас у Java реалізовувати кілька інтерфейсів?

3. Яке призначення інтерфейсу в Java?

4. Яке ключове слово використовується для реалізації інтерфейсу в класі?

5. Що відбувається, якщо клас заявляє про реалізацію інтерфейсу, але не надає реалізацій для всіх його методів?

question mark

Що таке інтерфейс у Java?

Select the correct answer

question mark

Чи може клас у Java реалізовувати кілька інтерфейсів?

Select the correct answer

question mark

Яке призначення інтерфейсу в Java?

Select the correct answer

question mark

Яке ключове слово використовується для реалізації інтерфейсу в класі?

Select the correct answer

question mark

Що відбувається, якщо клас заявляє про реалізацію інтерфейсу, але не надає реалізацій для всіх його методів?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

course content

Зміст курсу

Java ООП

Java ООП

1. Як Працювати з IDE?
2. ООП
3. Інтерфейс

book
Що Таке Інтерфейс?

Що робити, якщо нам потрібно успадкуватися від більше ніж одного класу? Java дозволяє це зробити за допомогою інтерфейсів. Незважаючи на назву, інтерфейс дуже схожий на абстрактний клас. Розглянемо оголошення інтерфейсу:

Простими словами, інтерфейс використовується для визначення методів, які клас буде реалізовувати. Інтерфейси мають окремий синтаксис для створення. Якщо для створення класу ми використовували "public class className { }", то синтаксис для створення інтерфейсу виглядає інакше:

InterfaceExample.java

InterfaceExample.java

copy
123456
package com.example; public interface InterfaceExample { void methodName(); String methodThatAcceptsAndReturnsString(String parameter); }
  1. Зверніть увагу на оголошення методу;

  2. Не використовуються модифікатори доступу;

  3. Не надаються тіла методів;

  4. Немає необхідності позначати методи як abstract, оскільки ми працюємо в інтерфейсі;

  5. Не створюються поля в інтерфейсах.

Розглянемо використання Interface на прикладі медіаплеєра. Маємо Interface з назвою MediaPlayer, який містить методи play, pause та stop. Додатково існують два класи, які реалізують цей інтерфейс медіаплеєра — це AudioPlayer та VideoPlayer.

MediaPlayer.java

MediaPlayer.java

AudioPlayer.java

AudioPlayer.java

VideoPlayer.java

VideoPlayer.java

copy
12345
public interface MediaPlayer { void play(); void pause(); void stop(); }

Як ви бачите, ми створили interface та два класи, які реалізують цей інтерфейс. Синтаксис такий самий, як і при перевизначенні абстрактних методів. Ми перевизначили кожен метод для кожного класу, щоб виконувати його власну специфічну функцію.

Однією з особливостей інтерфейсів є те, що ми можемо реалізувати більше ніж один інтерфейс. Розглянемо приклад:

Vehicle.java

Vehicle.java

VehicleInfo.java

VehicleInfo.java

Car.java

Car.java

copy
123456
package vehicle; interface Vehicle { void startEngine(); void stopEngine(); }

Ми створили інтерфейси Vehicle та VehicleInfo. Додатково, ми створили клас Car, який реалізує обидва ці інтерфейси. Таким чином, ми можемо обирати, яку поведінку реалізовувати в класі, що добре доповнює принцип абстракції в об'єктно-орієнтованому програмуванні. Працювати з інтерфейсами дуже зручно, і вони широко використовуються. У наступному розділі ми також розглянемо основні відмінності між інтерфейсом та абстрактним класом і дізнаємося, який з них краще використовувати на практиці!

1. Що таке інтерфейс у Java?

2. Чи може клас у Java реалізовувати кілька інтерфейсів?

3. Яке призначення інтерфейсу в Java?

4. Яке ключове слово використовується для реалізації інтерфейсу в класі?

5. Що відбувається, якщо клас заявляє про реалізацію інтерфейсу, але не надає реалізацій для всіх його методів?

question mark

Що таке інтерфейс у Java?

Select the correct answer

question mark

Чи може клас у Java реалізовувати кілька інтерфейсів?

Select the correct answer

question mark

Яке призначення інтерфейсу в Java?

Select the correct answer

question mark

Яке ключове слово використовується для реалізації інтерфейсу в класі?

Select the correct answer

question mark

Що відбувається, якщо клас заявляє про реалізацію інтерфейсу, але не надає реалізацій для всіх його методів?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1
some-alt