Auf Thema antworten

Das ist eine spannende Frage - Die Abgrenzung ist an der Stelle auch nicht trivial.


Die Klasse Collections bietet Methoden an um mit Collections zu arbeiten. Da kann man an vielen Stellen drüber diskutieren - ist es sinnvoll das in eine Extra Klassse zu packen oder wäre es nicht sinnvoller direkt in Collection aufgehoben.


Hier kommt ein "Problem" in Jave zu tragen. Java kann (aus gutem Grund keine Mehrfachvererbung). Und Collection ist ein Interface. Wenn nun z.B. jede Implementierung von Collection eine sort Methode implementieren muss ist das ziemlicher Bullshit - es sollte dafür eine Standard-Implementierung geben. Andererseits will man aber nicht eine Abstrakte Standard-Oberklasse Collection haben - weil damit schränkt man die Möglichkeiten zur Vererbung ein. Das heißt hier muss man einen Tod sterben:


a) Packe ich Kram in eine abstrakte Oberklasse, schränke ich die Möglichkeiten zur Vererbung ein

b) Definiere ich die Methoden nur im Interface, muss ich Implementireungen doppelt schreiben

c) Packe es in eine "Hilfsklasse" Collections hab ich Code, der fachlich eher Bestandteil der Collection-Api sein sollte in einer weiteren Klasse.



Oben