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

bookStandardmetoder

Abstrakt klasse vs Interface: Interfacet slår igen!

Tidligere kunne metoder med implementeringer kun eksistere i abstrakte klasser, men fra og med Java 8 findes de også i interfaces.

Lad os se på syntaksen for at erklære en default-metode:

default dataType methodName(parameters) {
// implementation 
}

Vi har brug for default-metoder til de samme formål som almindelige metoder i Java. Vi bruger dem, når vi har brug for en implementering i metoden, og når vi kun ønsker at implementere interfacet uden yderligere klasser. Lad os overveje et lille eksempel 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 dette eksempel indeholder interfacet Greeting en standardmetode sayHello() med en standardimplementering. Klassen GreetingImpl implementerer dette interface og overskriver metoden greet(). I main-metoden oprettes en instans af GreetingImpl, og begge metoder kaldes.

question mark

Hvad er formålet med en standardmetode i et Java-interface?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

What is the difference between an abstract class and an interface in Java?

Can you provide an example of a default method in an interface?

When should I use a default method in an interface instead of an abstract class?

Awesome!

Completion rate improved to 4.76

bookStandardmetoder

Stryg for at vise menuen

Abstrakt klasse vs Interface: Interfacet slår igen!

Tidligere kunne metoder med implementeringer kun eksistere i abstrakte klasser, men fra og med Java 8 findes de også i interfaces.

Lad os se på syntaksen for at erklære en default-metode:

default dataType methodName(parameters) {
// implementation 
}

Vi har brug for default-metoder til de samme formål som almindelige metoder i Java. Vi bruger dem, når vi har brug for en implementering i metoden, og når vi kun ønsker at implementere interfacet uden yderligere klasser. Lad os overveje et lille eksempel 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 dette eksempel indeholder interfacet Greeting en standardmetode sayHello() med en standardimplementering. Klassen GreetingImpl implementerer dette interface og overskriver metoden greet(). I main-metoden oprettes en instans af GreetingImpl, og begge metoder kaldes.

question mark

Hvad er formålet med en standardmetode i et Java-interface?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 4
some-alt