Verständnissfrage zu Interfaces

Status
Nicht offen für weitere Antworten.

x3n4

Mitglied
Hallo,

ich hab hier ein Programm vor mir, dass aus einem Interface einer Klasse und einer Testklasse besteht. Soweit hab ich alles verstanden, denke ich nur diese drei Zeilen versteh ich nicht wirklich.

Bonus b = new Konto (1234, a000.);
b.addBonus(5.);
System.out.println(((Konto)b).getSaldo());

Ist b jetzt ein Objekt von Konto oder von bonus? Ist es überhaupt ein Objekt? und was macht des "(Konto)b" da in der Ausgabe??

Wäre echt nett wenn mir jemand helfen könnte.

Code:
public class InterfaceTest {
	
	public static void main(String [] args){
		
		Konto k = new Konto(4711, 2000.);	
		
		k.addBonus(20.);			
		
		System.out.println("Saldo von k: "+k.getSaldo());
		
		Bonus b = new Konto(1234, 1000.);
		b.addBonus(500.);
		
		System.out.println(((Konto)b).getSaldo());
		
		Konto k2 = new Konto(6543, 1000.);
		
		k2.addBonus(30);
		
		System.out.println("Saldo von k2: "+k2.getSaldo());
	}
}


Code:
public interface Bonus{
	
	double MIN_FUER_BONUS = 1000.;	//Konstante
	
	void addBonus(double betrag);	//Abstrakte Methode die spaeter ueberschrieben wird
	
}

Code:
public class Konto implements Bonus {
	
	private int kontonummer;
	private double saldo;
	
	public Konto(int kontonummer, double saldo){	
		this.kontonummer = kontonummer;
		this.saldo = saldo;
	}
	
	public int getKontonummer(){
		return  kontonummer;
	}
	
	public void setKontonummer(int nr){
		kontonummer = nr;
	}
	
	public double getSaldo(){
		return saldo;
	}
	
	public void setSaldo(double betrag){
		saldo = betrag;
	}
	
	public void zahleEin(double betrag){
		saldo += betrag;
	}
	
	public void zahleAus(double betrag){
		saldo -= betrag;
	}
	
	
	public void addBonus(double betrag){	
		if(saldo >= MIN_FUER_BONUS){
			saldo += betrag;
		}
	}
}
 

Wildcard

Top Contributor
x3n4 hat gesagt.:
Ist b jetzt ein Objekt von Konto oder von bonus? Ist es überhaupt ein Objekt? und was macht des "(Konto)b" da in der Ausgabe??
Es ist ein Objekt das sowohl vom Typ Konto als auch Bonus ist.
Das (Konto)b ist ein cast. Dabei wird angenommen das b vom Typ Konto ist und deshalb auch so behandelt werden kann.
Währe b nicht vom Typ Konto würde eine ClassCastException geworfen werden.
 

x3n4

Mitglied
AAAh,

das b ein Objekt von beiden Klassen ist hat dann damit zu tun, dass man mit Interfaces ne mehrfache Vererbung machen kann?

Wusste gar nicht, dass man Objekte auf Klassen casten kann.

Ich danke dir vielmahls.
 

Leroy42

Top Contributor
x3n4 hat gesagt.:
das b ein Objekt von beiden Klassen ist hat dann damit zu tun, dass man mit Interfaces ne mehrfache Vererbung machen kann?
Naja ungefähr. Es ist natürlich nur Objekt einer Klasse, kann aber,
da es das Interface Bonus implementiert, jederzeit als Bonus
angesehen werden. Es antwortet ja auf jeden Methodenaufruf
den Bonus anbietet.

x3n4 hat gesagt.:
Wusste gar nicht, dass man Objekte auf Klassen casten kann.

Das geht natürlich nicht! :cool:

Nur die Syntax suggeriert das das Objekt auf eine Klasse gecastet wird.
In Wirklichkeit wird nur der Compiler zufriedengestellt und ihm versprochen
von der gecastete Instanz auf Methoden, die die Klasse in die gecastet wird, anbietet
aufgerufen kann.

(Mann! Ist deutsch verwirbelt... :oops:

Ich überlasse es den Grammatik-Profis mit Neigung zu
Orthographiebedingten Bauchschmerzen, meinen vorherigen Satz
zu entwirbeln. :cool: )
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Kurze Verständnissfrage Java Basics - Anfänger-Themen 4
S Verständnissfrage equals() Java Basics - Anfänger-Themen 2
E Allgemein Verständnissfrage zum Ablauf mehrerer Threads Java Basics - Anfänger-Themen 4
T Variablen Verständnissfrage Konstanten Java Basics - Anfänger-Themen 6
L OOP Verständnissfrage Java Basics - Anfänger-Themen 8
D Julia- / Mandelbrotmenge Verständnissfrage Java Basics - Anfänger-Themen 5
2 Verständnissfrage zu Libraries Java Basics - Anfänger-Themen 5
K Rekursive Funktion (Verständnissfrage) Java Basics - Anfänger-Themen 5
B Verständnissfrage synchronized Java Basics - Anfänger-Themen 2
G Verständnissfrage zu JNA Java Basics - Anfänger-Themen 15
S Verständnissfrage Java Basics - Anfänger-Themen 3
Nils_Langner JNI Verständnissfrage Java Basics - Anfänger-Themen 2
T Kleine Verständnissfrage Java Basics - Anfänger-Themen 7
D Interfaces von Interfaces macht das noch Sinn? Java Basics - Anfänger-Themen 21
J Methodenaufrufe abstrakte Klassen, Interfaces Java Basics - Anfänger-Themen 17
M Wozu dient Interfaces? Java Basics - Anfänger-Themen 6
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
U Funktionale Interfaces mit mehreren abstrakten Methoden? Java Basics - Anfänger-Themen 8
M Interfaces Aufgabe Java Basics - Anfänger-Themen 2
I JSON / XML Struktur mit Vererbung / Interfaces Java Basics - Anfänger-Themen 0
I XML und Interfaces aus anderen Projekten Java Basics - Anfänger-Themen 3
8u3631984 Record - Interfaces Java Basics - Anfänger-Themen 4
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
H Sinn von Interfaces Java Basics - Anfänger-Themen 21
B JaxB und Interfaces? Java Basics - Anfänger-Themen 2
M Funktionale Interfaces Java Basics - Anfänger-Themen 3
Kirby.exe Frage zur Verwendung von Interfaces Java Basics - Anfänger-Themen 6
H Frage zu interfaces Java Basics - Anfänger-Themen 1
J Zweck von Interfaces immer noch nicht klar Java Basics - Anfänger-Themen 3
M Klasse erbt von Interfaces Java Basics - Anfänger-Themen 6
T Interfaces in erbenden Klassen Java Basics - Anfänger-Themen 2
T Abstrakte Klasse und Interfaces Java Basics - Anfänger-Themen 12
H Polymorphie Interfaces und statischer Typ Java Basics - Anfänger-Themen 33
T Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 7
F Exceptions in Interfaces Java Basics - Anfänger-Themen 4
F Interface Warum Interfaces? Java Basics - Anfänger-Themen 5
R interfaces Java Basics - Anfänger-Themen 1
B Interfaces Java Basics - Anfänger-Themen 6
A Vererbung/Interfaces/Generics Java Basics - Anfänger-Themen 12
D Interface Wieso Aufruf aller Methoden eines Interfaces? Java Basics - Anfänger-Themen 11
J Interfaces? Java Basics - Anfänger-Themen 32
M Erstellung Interfaces....totale Anfängerfrage Java Basics - Anfänger-Themen 16
S Erste Schritte Innere Klassen und Interfaces Java Basics - Anfänger-Themen 2
J Wofür dienen Interfaces ? Java Basics - Anfänger-Themen 1
Hijo2006 Frage zu Interfaces Java Basics - Anfänger-Themen 21
Hacer Interfaces implementieren Java Basics - Anfänger-Themen 7
H Implementierung eines Interfaces erweitern Java Basics - Anfänger-Themen 13
L Via Interfaces unterschiedliche Klassen ansprechen Java Basics - Anfänger-Themen 8
A Verwendung von Interfaces Java Basics - Anfänger-Themen 7
J Interfaces Java Basics - Anfänger-Themen 15
D Frage bzgl. Interfaces Java Basics - Anfänger-Themen 10
D Interface Verständnisprobleme von Interfaces Java Basics - Anfänger-Themen 5
D Interface Interfaces und abstrakte Klassen implementieren Java Basics - Anfänger-Themen 4
S Rollen verändern, Interfaces austauschen wie? Java Basics - Anfänger-Themen 10
K Interfaces/Klassen etc. Java Basics - Anfänger-Themen 6
F Implementierung von Interfaces -> Problem mit main Java Basics - Anfänger-Themen 12
S Verständnisproblem bei Interfaces Java Basics - Anfänger-Themen 6
I Interface Verständnisfrage Interfaces (Bsp.: Enumeration) Java Basics - Anfänger-Themen 2
M Frage zu Generics in Klassen, Abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 5
O Java Interfaces für andere Programmiersprachen zur Verfuegung stellen? Java Basics - Anfänger-Themen 2
K Interface Generics, Interfaces und Listen - ich bin verwirrt. Java Basics - Anfänger-Themen 7
G Instanzen eines Interfaces erzeugen Java Basics - Anfänger-Themen 7
M Compiler-Fehler Alle Methoden eines Interfaces Implementiert dennoch Fehler Java Basics - Anfänger-Themen 3
V Interface Interfaces und abstrakte Klassen Java Basics - Anfänger-Themen 3
F Best Practice UML/Planung eines Projektes (Klassen, Interfaces, ...) Java Basics - Anfänger-Themen 0
V Vererbung Vererbung, Interfaces und OOP... Java Basics - Anfänger-Themen 10
C Sinn eines Interfaces? Java Basics - Anfänger-Themen 4
A Interface Poymorphismus bei Interfaces Java Basics - Anfänger-Themen 2
Pentalon Eclipse JUNO keine Vorschläge von Methoden bzw. Interfaces der eigenen Klassen Java Basics - Anfänger-Themen 5
R Mehrere Interfaces(Comparable, ...) Java Basics - Anfänger-Themen 2
J Interfaces Abstrakte Klassen Java Basics - Anfänger-Themen 15
D Interfaces und allgemeingültige Methodenaufrufe Java Basics - Anfänger-Themen 6
H Erste Schritte 2 User Interfaces für eine Anwendung Java Basics - Anfänger-Themen 7
S OOP Wann Proxies und Interfaces? Java Basics - Anfänger-Themen 3
M Interface @Inject mit Interfaces? Java Basics - Anfänger-Themen 2
F Interface Unterschied von Attributen und Methoden bei abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 5
V mehrfachvererbung unter interfaces Java Basics - Anfänger-Themen 10
J Interface Wie funktioniert das mit den Interfaces. Ich verstehe es einfach nicht! :( Java Basics - Anfänger-Themen 15
T Interfaces und Implementierungen Java Basics - Anfänger-Themen 12
S Interface mehrere Interfaces Java Basics - Anfänger-Themen 2
M Vererbung Problem bei Interfaces Java Basics - Anfänger-Themen 8
H Dynamische Bindung mit Interfaces und LinkedList Java Basics - Anfänger-Themen 7
F Interfaces Java Basics - Anfänger-Themen 4
M Frage zu Interfaces Java Basics - Anfänger-Themen 3
N Generics und Interfaces Java Basics - Anfänger-Themen 5
D Abstrakte Klassen und Interfaces als Paramter in Funktionen Java Basics - Anfänger-Themen 3
P OOP Aufruf eines Interfaces Java Basics - Anfänger-Themen 4
N OOP Vererbung von Interfaces Java Basics - Anfänger-Themen 12
S Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 2
D Sinn von Interfaces - Wozu? Java Basics - Anfänger-Themen 9
P Frage zu Interfaces Bsp. Java Basics - Anfänger-Themen 9
A Deklarationen in abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 11
R Adapterklassen vs Interfaces Java Basics - Anfänger-Themen 6
P Interfaces -> eins oder mehrere für eine Anwendung? Java Basics - Anfänger-Themen 9
2 Interfaces, Polymorphie und Methoden. Java Basics - Anfänger-Themen 14
A Obstlager Interfaces Java Basics - Anfänger-Themen 7
K Theor. Frage zu Interfaces Java Basics - Anfänger-Themen 30
T Frage zu Interfaces und Abstrakten Klassen Java Basics - Anfänger-Themen 4
J Interfaces Java Basics - Anfänger-Themen 14
L Interfaces Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben