G
guest12
Gast
Hallo Leute!
Ja, ich hab gegoogelt und hab folgende Beschreibung gefunden:
http://www.java-forum.org/einfuehrungen-erste-schritte/117297-interfaces.html
Das Programm ohne Interface ist mir vollkommen klar, aber das mit dem Interface verwirrt mich ein wenig.
Das Interface-Programm ist ja folgendermaßen aufgebaut:
Bitte versucht es das mir zu erklären. Bzw. warum muss man den "Buyable b"(das interface) mit "new Car" gleichstellen? Also übergeben(=gleichstellen). Also was passiert da genau?
Danke!
mfg
guest
Ja, ich hab gegoogelt und hab folgende Beschreibung gefunden:
http://www.java-forum.org/einfuehrungen-erste-schritte/117297-interfaces.html
Das Programm ohne Interface ist mir vollkommen klar, aber das mit dem Interface verwirrt mich ein wenig.
Das Interface-Programm ist ja folgendermaßen aufgebaut:
Java:
interface Buyable() {
public int getPrice();
}
class Car implements Buyable{
@Override
public int getPrice() {
return 15000;
}
}
class Truck implements Buyable{
@Override
public int getPrice() {
return 45000;
}
}
class Motorbike implements Buyable{
@Override
public int getPrice() {
return 8000;
}
}
class CarDealer {
private int billingAmount;
public void buyBuyable(Buyable b) { //an der stelle: "Buyable b" ="new Car()", also die Adressen sind von beiden dieselbe, oder? Wenn nicht wie nennt man das sonst? Ich begreif jetzt nicht wie jetzt "b.getPrice" die Auto-Klasse finden soll und halt dann darin die Funktion getPrice aufruft.
billingAmount += b.getPrice();
}
public void printBill() {
System.out.println("Der Betrag Ihres Einkaufs beläuft sich auf:");
System.out.println(billingAmount + " €.");
System.out.println("Danke für Ihren Einkauf bei MegaMüll Vehicles.");
}
}
Bitte versucht es das mir zu erklären. Bzw. warum muss man den "Buyable b"(das interface) mit "new Car" gleichstellen? Also übergeben(=gleichstellen). Also was passiert da genau?
Danke!
mfg
guest