Cursusinhoud
Java OOP
Java OOP
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.
Laten we de syntaxis bekijken voor het declareren van een standaardmethode:
We hebben standaardmethoden nodig voor dezelfde doeleinden als reguliere methoden in Java. We gebruiken ze wanneer we een implementatie in de methode nodig hebben en wanneer we alleen de interface willen implementeren zonder extra klassen. Laten we een klein voorbeeld bekijken met standaardmethoden:
Main.java
package 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!