Методи за замовчуванням
Свайпніть щоб показати меню
Абстрактний клас проти Інтерфейсу: Інтерфейс завдає удару у відповідь!
Раніше методи з реалізацією могли існувати лише в абстрактних класах, але починаючи з Java 8, вони з'явилися й в інтерфейсах.
Розглянемо синтаксис оголошення default-методу:
default dataType methodName(parameters) {
// implementation
}
Default-методи потрібні для тих самих цілей, що й звичайні методи в Java. Їх використовують, коли необхідна реалізація в методі та коли потрібно реалізувати лише інтерфейс без додаткових класів. Розглянемо невеликий приклад із використанням default-методів:
Main.java
12345678910111213141516171819202122232425package com.example; public class Main { public interface Greeting { default void sayHello() { System.out.println("Hello from the interface!"); } void greet(String name); } public static class GreetingImpl implements Greeting { @Override public void greet(String name) { System.out.println("Hello, " + name + "!"); } } public static void main(String[] args) { GreetingImpl greetingImpl = new GreetingImpl(); greetingImpl.sayHello(); // Output: Hello from the interface! greetingImpl.greet("Alice"); // Output: Hello, Alice! } }
У цьому прикладі інтерфейс Greeting містить типовий метод sayHello() із типовою реалізацією. Клас GreetingImpl реалізує цей інтерфейс і перевизначає метод greet(). У головному методі створюється екземпляр GreetingImpl і викликаються обидва методи.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат