Da Marker-Interfaces meistens nur zum Markieren einer Klasse nützlich sind, kann das gleiche durch Annotationen erreicht werden. Zum Beispiel Cloneable
Schnittstelle kann @Cloneable
sein.Können Annotationen Marker Interfaces vollständig ersetzen?
Gibt es noch Bedarf für Marker-Schnittstellen oder kann durch Annotationen relpaced werden? Gibt es irgendwelche Vorteile/Nachteile bei der Verwendung von ihnen? Ich meine lieber einen anderen vorziehen?
Marker-Schnittstelle wurde als Antipattern noch vor Generics etabliert. –
@MarkoTopolnik zuvor Marker-Schnittstellen wurden für Metadaten benötigt, aber das gleiche kann jetzt mithilfe von Anmerkungen erreicht werden. Deshalb wird es ein Anti-Muster genannt, habe ich recht? –
Ja, sogar auf Java 1.4 gab es Empfehlungen für das Design ohne Marker-Schnittstellen. Marker-Interfaces sind ein Missbrauch des Konzepts des Polymorphismus. –