Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Metodi Predefiniti | Interfaccia
Java OOP

bookMetodi Predefiniti

Classe astratta vs Interfaccia: Il ritorno dell'Interfaccia!

In precedenza, i metodi con implementazioni potevano esistere solo nelle classi astratte, ma a partire da Java 8, sono comparsi anche nelle interfacce.

Vediamo la sintassi per dichiarare un metodo di default:

default dataType methodName(parameters) {
// implementation 
}

Abbiamo bisogno dei metodi di default per gli stessi scopi dei metodi regolari in Java. Li utilizziamo quando è necessaria un'implementazione nel metodo e quando si desidera implementare solo l'interfaccia senza classi aggiuntive. Consideriamo un piccolo esempio utilizzando i metodi di default:

Main.java

Main.java

copy
12345678910111213141516171819202122232425
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 questo esempio, l'interfaccia Greeting contiene un metodo predefinito sayHello() con un'implementazione di default. La classe GreetingImpl implementa questa interfaccia e sovrascrive il metodo greet(). Nel metodo main, viene creata un'istanza di GreetingImpl e vengono chiamati entrambi i metodi.

question mark

Qual è lo scopo di un metodo predefinito in un'interfaccia Java?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 4

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 4.76

bookMetodi Predefiniti

Scorri per mostrare il menu

Classe astratta vs Interfaccia: Il ritorno dell'Interfaccia!

In precedenza, i metodi con implementazioni potevano esistere solo nelle classi astratte, ma a partire da Java 8, sono comparsi anche nelle interfacce.

Vediamo la sintassi per dichiarare un metodo di default:

default dataType methodName(parameters) {
// implementation 
}

Abbiamo bisogno dei metodi di default per gli stessi scopi dei metodi regolari in Java. Li utilizziamo quando è necessaria un'implementazione nel metodo e quando si desidera implementare solo l'interfaccia senza classi aggiuntive. Consideriamo un piccolo esempio utilizzando i metodi di default:

Main.java

Main.java

copy
12345678910111213141516171819202122232425
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 questo esempio, l'interfaccia Greeting contiene un metodo predefinito sayHello() con un'implementazione di default. La classe GreetingImpl implementa questa interfaccia e sovrascrive il metodo greet(). Nel metodo main, viene creata un'istanza di GreetingImpl e vengono chiamati entrambi i metodi.

question mark

Qual è lo scopo di un metodo predefinito in un'interfaccia Java?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 4
some-alt