Tach zusammen!
Ich lerne noch Java und arbeite gerade mit Datenbanken. Nun habe ich mal eine doofe Frage:
Was passiert hier eigentlich?
"Connection" ist ein Interface.
"Statement" ist auch ein Interface.
Connection verfügt über die Methode createStatement() die ein Statement Objekt zurückgibt. Soweit so gut. Anders würde das ja auch nicht funktionieren. Aber:
Wenn ich nun in der Java Doc. nachschaue finde ich dort nur folgende Statement-Klasse:
Das ist ja aber nicht DIE Statementklasse, aus der das Objekt entstammt, oder?
Zumindest verfügt das Statement (aus dem Code oben) nicht über die Methoden, die in der Dokumentation angegeben sind (z.B. getArguments()).
Aber irgendeine Klasse muss ja das Interface "Statement" implementieren, damit die Zuweisung überhaupt funktioniert. Nur bin ich zu doof, herauszufinden welche das ist.
Wäre super cool, wenn mir das jemand erklären könnte. Irgendwie steige ich da noch nicht so ganz hinter. Und wer nicht fragt bleibt dumm, oder? :-D
Ich lerne noch Java und arbeite gerade mit Datenbanken. Nun habe ich mal eine doofe Frage:
Java:
private static Connection conn;
Statement statement = conn.createStatement();
Was passiert hier eigentlich?
"Connection" ist ein Interface.
"Statement" ist auch ein Interface.
Connection verfügt über die Methode createStatement() die ein Statement Objekt zurückgibt. Soweit so gut. Anders würde das ja auch nicht funktionieren. Aber:
Wenn ich nun in der Java Doc. nachschaue finde ich dort nur folgende Statement-Klasse:
Das ist ja aber nicht DIE Statementklasse, aus der das Objekt entstammt, oder?
Zumindest verfügt das Statement (aus dem Code oben) nicht über die Methoden, die in der Dokumentation angegeben sind (z.B. getArguments()).
Aber irgendeine Klasse muss ja das Interface "Statement" implementieren, damit die Zuweisung überhaupt funktioniert. Nur bin ich zu doof, herauszufinden welche das ist.
Wäre super cool, wenn mir das jemand erklären könnte. Irgendwie steige ich da noch nicht so ganz hinter. Und wer nicht fragt bleibt dumm, oder? :-D