<sub class="descriptionSection">02-04-2025 02:36:pm // #Tag // [[Programmierung]]</sub>
____
## Implementieren
Das Implementieren einer Methode bedeutet, dass man die Funktionalität einer Methode hinzufügt
i.e:
(File: Pet.java)
```java
public interface Pet {
public abstract void beFriendly();
public void play();
}
```
> [!NOTE] Abstract Methods in einem Interface
> In einem Interface ist jede Methode standardmäßig als Abstract definiert damit implementierende Klassen gezwungen sind diese Methoden zu implementieren, allerdings kann man auch eine "default" Implementierung geben um keine implementierung zu erzwingen
(File Dog.java)
```java
public class Dog implements Pet
public void beFriend(){
//Implementierung der Methode
}
public void play(){
//Implementierung der Methode
}
```
## Überladen von Methoden
Überladen von Methoden bedeutet, dass man mehrere Methoden mit dem Selben Namen implementiert, aber verschiedene Parameter annimmt:
```java
class Main{
static int plusMethod(int x, int y){
return x + y;
}
static double plusMethod(double x, double y){
return x + y;
}
static int plusMethod(int x, int y, int z){
return x + y + z;
}
}
```
## Überschreiben von Methoden
Überschreiben von Methoden ist das erneute implementieren von einer Methode aus einer Super Klasse:
```java
class A{
int plusMethod(int x, int y){
return x + y;
}
}
class B extends A{
@override //<- Nicht unbedingt benötigt, aber wichtig um fehler zu vermeiden
int plusMethod(int a, int b){
return a + b;
}
}
```