Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Standardmetoder | Interface
Java OOP

bookStandardmetoder

Abstrakt klass vs Interface: Gränssnittet slår tillbaka!

Tidigare kunde metoder med implementationer endast finnas i abstrakta klasser, men från och med Java 8 dök de även upp i gränssnitt.

Låt oss titta på syntaxen för att deklarera en default-metod:

default dataType methodName(parameters) {
// implementation 
}

Vi behöver default-metoder för samma syften som vanliga metoder i Java. Vi använder dem när vi behöver en implementation i metoden och när vi vill implementera endast gränssnittet utan ytterligare klasser. Låt oss titta på ett litet exempel med default-metoder:

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! } }

I det här exemplet innehåller gränssnittet Greeting en standardmetod sayHello() med en standardimplementation. Klassen GreetingImpl implementerar detta gränssnitt och överskuggar metoden greet(). I huvudmetoden skapas en instans av GreetingImpl och båda metoderna anropas.

question mark

Vad är syftet med en standardmetod i ett Java-gränssnitt?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 4

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Ställ mig frågor om detta ämne

Sammanfatta detta kapitel

Visa verkliga exempel

Awesome!

Completion rate improved to 4.76

bookStandardmetoder

Svep för att visa menyn

Abstrakt klass vs Interface: Gränssnittet slår tillbaka!

Tidigare kunde metoder med implementationer endast finnas i abstrakta klasser, men från och med Java 8 dök de även upp i gränssnitt.

Låt oss titta på syntaxen för att deklarera en default-metod:

default dataType methodName(parameters) {
// implementation 
}

Vi behöver default-metoder för samma syften som vanliga metoder i Java. Vi använder dem när vi behöver en implementation i metoden och när vi vill implementera endast gränssnittet utan ytterligare klasser. Låt oss titta på ett litet exempel med default-metoder:

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! } }

I det här exemplet innehåller gränssnittet Greeting en standardmetod sayHello() med en standardimplementation. Klassen GreetingImpl implementerar detta gränssnitt och överskuggar metoden greet(). I huvudmetoden skapas en instans av GreetingImpl och båda metoderna anropas.

question mark

Vad är syftet med en standardmetod i ett Java-gränssnitt?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 4
some-alt