Von JComponent erben und Set implementieren

  • Themenstarter Themenstarter triopsfreak
  • Beginndatum Beginndatum
T

triopsfreak

Gast
Ja, das würde ich gern... Aber wie komme ich zu dem Ziel? Gibt es eine Möglichkeit oder hab ich schon verloren?
Das Problem ist ja, dass sowohl Collection und JComponent eine Methode namens size() haben, die aber entweder ein int oder eine Dimension zurückgeben, das geht natürlich nicht. Ich weiss schon, wie ich das anders lösen kann, aber mich würde trotzdem interessieren, ob es eine Möglichkeit für das gibt!
Eclipse kennt da ja keine Hilfe und sagt nur:
Java:
The return types are incompatible for the inherited methods Collection<Integer>.size(), Set<Integer>.size(), Component.size()
 
sei froh dass diese Fehlermeldung kommt und nicht beide int zurückgeben, sonst hättest du viel größere Probleme,
dass dann nämlich unbemerkt ein riesiger Fehler entsteht (en könnte),
entweder überschreibst du die size()-Methode und die JComponent wird in der GUI mit falschem size()-Wert für Chaos sorgen,
oder du vergisst das nicht angemeckerte size() und deine Klasse wird als Set falsch verwendet werden

eine sinnvolle Lösung gibts dort nicht, außer dem allgemeinen Merksatz dass Vererbung sowieso überschätzt ist,
mit zwei einzelnen Klassen, evtl. per Komposition verbunden, dürfte man auch zum Ziel kommen,
 
Gut, das mit den zwei Klassen hatte ich auch vor, ist eigentlich auch viel eleganter 😉
 

Zurück
Oben