Superinterface als Datentyp

Status
Nicht offen für weitere Antworten.

DRK-Aktivist

Mitglied
Hallo,

was bedeutet es für mein Objekt, wenn ich das Superinterface als Datentyp habe?
Bsp.:

Code:
Set s = new HashSet();

Ist es dann so, dass ich nur auf die Methoden, Variablen die im Superinterface drinstehen benutzen kann? Gilt dasselbe auch in Superklassen?

Vielen Dank im Voraus und

schöne Grüße
Michael
 
jop, dadurch kannste dann aber auch HashSet durch was anderes ersetzen das Set implementiert.

wenn du die anderen methoden verwenden willst kannste auch casten
 
> wenn du die anderen methoden verwenden willst kannste auch casten

widerspricht deinem ersten Satz, denn wenn man so castet gibts etwas Ärger falls man ein anderes Set verwendet 😉

macht also nur Sinn, wenn man nur die Operationen von Set verwendet,
am Anfang legt manden kontreten Typ fest, und vertraut dann darauf, dass es mit den Hashs richtig läuft
 
das war auch nur für den fall gedacht dass er um ne operation nicht rum kommt

ist aber meist nicht sinnvoll 🙂
 
raiL hat gesagt.:
ist aber meist nicht sinnvoll 🙂
meist ? immer...

was bringt es die interface definition zu nehmen, wenn man spater methoden verwendet die nur in der klasse definiert werden ?
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben