Standardmethoden
Abstrakte Klasse vs. Interface: Die Rückkehr des Interface!
Früher konnten Methoden mit Implementierungen nur in abstrakten Klassen existieren, aber seit Java 8 sind sie auch in Interfaces möglich.
Werfen wir einen Blick auf die Syntax zur Deklaration einer Default-Methode:
default dataType methodName(parameters) {
// implementation
}
Wir benötigen Default-Methoden für die gleichen Zwecke wie reguläre Methoden in Java. Sie werden verwendet, wenn eine Implementierung in der Methode erforderlich ist und wenn nur das Interface ohne zusätzliche Klassen implementiert werden soll. Betrachten wir ein kleines Beispiel mit 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 diesem Beispiel enthält das Interface Greeting
eine Standardmethode sayHello()
mit einer Standardimplementierung. Die Klasse GreetingImpl
implementiert dieses Interface und überschreibt die Methode greet()
. In der Hauptmethode wird eine Instanz von GreetingImpl
erstellt und beide Methoden werden aufgerufen.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 4.76
Standardmethoden
Swipe um das Menü anzuzeigen
Abstrakte Klasse vs. Interface: Die Rückkehr des Interface!
Früher konnten Methoden mit Implementierungen nur in abstrakten Klassen existieren, aber seit Java 8 sind sie auch in Interfaces möglich.
Werfen wir einen Blick auf die Syntax zur Deklaration einer Default-Methode:
default dataType methodName(parameters) {
// implementation
}
Wir benötigen Default-Methoden für die gleichen Zwecke wie reguläre Methoden in Java. Sie werden verwendet, wenn eine Implementierung in der Methode erforderlich ist und wenn nur das Interface ohne zusätzliche Klassen implementiert werden soll. Betrachten wir ein kleines Beispiel mit 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 diesem Beispiel enthält das Interface Greeting
eine Standardmethode sayHello()
mit einer Standardimplementierung. Die Klasse GreetingImpl
implementiert dieses Interface und überschreibt die Methode greet()
. In der Hauptmethode wird eine Instanz von GreetingImpl
erstellt und beide Methoden werden aufgerufen.
Danke für Ihr Feedback!