Інтерфейс в Java з прикладом

⚡ Розумний підсумок

Інтерфейс в Java це пресtracТип t, що визначає поведінку, яку має реалізувати клас, що містить константи та abstract методи. Цей ресурс пояснює, що таке інтерфейс, чому він потрібен, як його оголосити та реалізувати, а також чим інтерфейси відрізняються від класів та абзаців.tracт-класи.

  • 📜 Визначення: Інтерфейс визначає поведінку за допомогою abstract методи та константи, які повинні надавати реалізація класів.
  • 🔑 Ключове слово: Інтерфейси оголошуються за допомогою ключового слова interface, а класи використовують реалізовані елементи для їх прийняття.
  • 🧩 Множинне успадкування: Клас може реалізувати багато інтерфейсів, вирішуючи Javaвідсутність множинного успадкування класів.
  • 🇧🇷 Клас проти інтерфейсу: На відміну від класів, інтерфейси не можуть бути створені екземплярами та традиційно містять лише публічні абзаци.tracт методи.
  • 🎯 Коли користуватися: Використовуйте інтерфейс для визначення ролі для непов'язаних класів та абзацуtract-клас для спільного шаблону.

Інтерфейс в Java

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

An Інтерфейс в Java Мова програмування визначається як ABStracТип t, що використовується для визначення поведінки класу. A Java інтерфейс містить статичні константи та abstract методи. Клас може реалізувати кілька інтерфейсів. У Java, інтерфейси оголошуються за допомогою ключового слова interface. Усі методи в інтерфейсі неявно є публічними та не мають значення ABS.tract.

Синтаксис для оголошення інтерфейсу

Щоб використовувати інтерфейс у вашому класі, додайте ключове слово «implements» після назви класу, а потім назву інтерфейсу.

interface {
   // methods
}

Приклад реалізації інтерфейсу

Тепер давайте розберемося з інтерфейсами в Java з прикладом:

class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle

Натисніть тут якщо відео недоступне.

Натисніть тут якщо відео недоступне

Чому потрібен інтерфейс?

Щоб зрозуміти використання інтерфейсу в Java краще, давайте розглянемо Java приклад інтерфейсу. Клас «Медіаплеєр» має два підкласи: CD-програвач та DVD-програвач. Кожен з них має свій унікальний метод реалізації інтерфейсу для відтворення музики.

Чому потрібен інтерфейс

Інший клас, «Комбінований привід», успадковує як CD, так і DVD (див. зображення нижче). Який метод відтворення він має успадковувати? Це може спричинити серйозні проблеми з проектуванням, і, отже, Java не допускає кількох спадкування.

Чому потрібен інтерфейс

Тепер давайте розглянемо ще один приклад – собаку.

Припустимо, у вас є вимога, де клас «собака» успадковує класи «тварина» та «Домашня тварина» (див. зображення нижче). Але ви не можете розширити два класи в JavaТо що б ви зробили? Рішенням є інтерфейс.

Чому потрібен інтерфейс

У правилах для інтерфейсу зазначено:

  • A Java інтерфейс на 100% ідеальнийtract клас і має лише ABStracметоди.
  • Клас може реалізувати будь-яку кількість інтерфейсів.

Клас Dog може розширити клас “Animal” та реалізувати інтерфейс “Pet”.

Чому потрібен інтерфейс

Java Приклад інтерфейсу

Давайте розберемося з інтерфейсом програми нижче Java:

Крок 1) Скопіюйте наступний код у редактор.

interface Pet {
  public void test();
}
class Dog implements Pet {
   public void test() {
     System.out.println("Interface Method Implemented");
  }
   public static void main(String args[]) {
     Pet p = new Dog();
     p.test();
  }
}

Крок 2) Збережіть, скомпілюйте та запустіть код. Спостерігайте за виводом інтерфейсу в Java більшість квитків вже розпродано!.

Різниця між класом та інтерфейсом

Клас інтерфейс
У класі ви можете створювати екземпляри змінних та об'єкта. В інтерфейсі не можна створювати екземпляри змінних або об'єкта.
Клас може містити конкретні (з реалізацією) методи. Інтерфейс не може містити конкретні (з реалізацією) методи.
Специфікатори доступу, що використовуються з класами, це private, protected та public. В інтерфейсі використовується лише один специфікатор – public.

Коли використовувати Interface та AbstracКлас?

  • Використовуйте пресtract-клас, коли шаблон потрібно визначити для групи підкласів.
  • Використовуйте інтерфейс, коли роль потрібно визначити для інших класів, незалежно від дерева успадкування цих класів.

Повинен знати факти про інтерфейс

  • A Java клас може реалізувати декілька Java інтерфейси. Необхідно, щоб клас реалізував усі методи, оголошені в інтерфейсах.
  • Клас повинен перевизначати всі м'язи пресуtract методів, оголошених в інтерфейсі.
  • Інтерфейс дозволяє надсилати повідомлення об'єкту незалежно від того, до якого класу він належить.
  • Клас повинен забезпечувати функціональність для методів, оголошених в інтерфейсі.
  • Усі методи в інтерфейсі неявно є публічними та не є абсолютними.tract.
  • Інтерфейс не може бути створений.
  • Посилання на інтерфейс може вказувати на об'єкти класів, що його реалізують.
  • Інтерфейс може розширювати один або багато інтерфейсів. Клас може розширювати лише один клас, але реалізовувати будь-яку кількість інтерфейсів.
  • Інтерфейс не може реалізовувати інший інтерфейс. За потреби він має розширювати інший інтерфейс.
  • Інтерфейс, оголошений всередині іншого інтерфейсу, називається вкладеним інтерфейсом.
  • Під час оголошення змінна інтерфейсу має бути ініціалізована. В іншому випадку компілятор викине помилку.
  • Клас не може реалізувати два інтерфейси в Java які мають методи з однаковою назвою, але різним типом повернення.

Поширені запитання

Так. Помічники ШІ можуть створювати інтерфейси та реалізовувати класи з опису простою мовою, включаючи заглушки методів. Розробникам все одно слід перевіряти сигнатури методів, типи повернення та поведінку перед використанням коду.

Інструменти штучного інтелекту аналізують інтерфейси, щоб пропонувати реалізації, виявляти відсутні методи та рекомендувати чистіші абсцеси.tracцій під час рефакторингу. Це пришвидшує розробку, зберігаючи при цьомуping кодова база слабо пов'язана та легша в обслуговуванні.

так Оскільки Java 8, інтерфейси можуть включати методи за замовчуванням та статичні методи, які мають реалізації, на додаток до abstract методи. Це дозволяє інтерфейсам розвиватися без порушення існуючих класів реалізації.

Інтерфейс маркера не містить методів. Він передає метадані JVM або компілятору, тому вони спеціально обробляють реалізовані класи. Приклади включають Serializable та Cloneable у стандарті. Java бібліотека

Підсумуйте цей пост за допомогою: