Standaardmethoden
Abstracte klasse vs Interface: De Interface Slaat Terug!
Voorheen konden methoden met implementaties alleen bestaan in abstracte klassen, maar vanaf Java 8 verschenen ze ook in interfaces.
Bekijk de syntaxis voor het declareren van een default-methode:
default dataType methodName(parameters) {
// implementation
}
We hebben default-methoden nodig voor dezelfde doeleinden als reguliere methoden in Java. Ze worden gebruikt wanneer een implementatie in de methode vereist is en wanneer alleen de interface geïmplementeerd moet worden zonder extra klassen. Bekijk een klein voorbeeld met default-methoden:
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! } }
In dit voorbeeld bevat de interface Greeting een standaardmethode sayHello() met een standaardimplementatie. De klasse GreetingImpl implementeert deze interface en overschrijft de methode greet(). In de main-methode wordt een instantie van GreetingImpl aangemaakt en worden beide methoden aangeroepen.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
What is the main difference between abstract classes and interfaces in Java?
Can you provide more examples of default methods in interfaces?
When should I use a default method in an interface instead of an abstract class?
Awesome!
Completion rate improved to 4.76
Standaardmethoden
Veeg om het menu te tonen
Abstracte klasse vs Interface: De Interface Slaat Terug!
Voorheen konden methoden met implementaties alleen bestaan in abstracte klassen, maar vanaf Java 8 verschenen ze ook in interfaces.
Bekijk de syntaxis voor het declareren van een default-methode:
default dataType methodName(parameters) {
// implementation
}
We hebben default-methoden nodig voor dezelfde doeleinden als reguliere methoden in Java. Ze worden gebruikt wanneer een implementatie in de methode vereist is en wanneer alleen de interface geïmplementeerd moet worden zonder extra klassen. Bekijk een klein voorbeeld met default-methoden:
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! } }
In dit voorbeeld bevat de interface Greeting een standaardmethode sayHello() met een standaardimplementatie. De klasse GreetingImpl implementeert deze interface en overschrijft de methode greet(). In de main-methode wordt een instantie van GreetingImpl aangemaakt en worden beide methoden aangeroepen.
Bedankt voor je feedback!