Hallo liebe Community,
ich habe in meinem Buch die Interfaces erreicht und verstehe diese nicht
Folgender Code ist gegeben:
Ich verstehe im ersten Codeblock den Parameter in Zeile 3 nicht.
Wieso übergebe ich dort das Interface selbst und kein Objekt der Klasse "Würfel", weil die Klasse "Würfel" ja schon das Interface implementiert... Wäre das dann nicht doppelt gemoppelt?
Und wozu überhaupt solch ein Interface erstellen, ich kann diese Methoden doch einfach in der Klasse Würfel schreiben oder nicht? So würde ich mir eine Menge Verwirrung ersparen und hätte bei einer Klasse keinen redundanten Code...
Hilfe :bahnhof:
grüße coco07!
ich habe in meinem Buch die Interfaces erreicht und verstehe diese nicht
Folgender Code ist gegeben:
Java:
public class DieMain{
public static long calcVolumen(MeinInterface mi){
return (long)mi.getLaenge() * mi.getBreite() * mi.getHoehe();
}
public static void main(String[] args) {
Wuerfel wuerfel = new Wuerfel();
wuerfel.laenge=10;
wuerfel.breite=10;
System.out.println(calcVolumen(wuerfel));
}
}
Java:
public class Wuerfel implements MeinInterface{
int laenge;
int breite;
int hoehe;
@Override
public long getLaenge() {
return laenge;
}
@Override
public long getBreite() {
return breite;
}
@Override
public long getHoehe(){
return hoehe;
}
}
Java:
public interface MeinInterface {
public long getLaenge();
public long getBreite();
public long getHoehe();
}
Ich verstehe im ersten Codeblock den Parameter in Zeile 3 nicht.
Wieso übergebe ich dort das Interface selbst und kein Objekt der Klasse "Würfel", weil die Klasse "Würfel" ja schon das Interface implementiert... Wäre das dann nicht doppelt gemoppelt?
Und wozu überhaupt solch ein Interface erstellen, ich kann diese Methoden doch einfach in der Klasse Würfel schreiben oder nicht? So würde ich mir eine Menge Verwirrung ersparen und hätte bei einer Klasse keinen redundanten Code...
Hilfe :bahnhof:
grüße coco07!
Zuletzt bearbeitet: