Angenommen, ich schreibe eine Schnittstelle für eine Klasse A, die eine Liste von Objekten des Typs B enthält, und ich möchte diese Liste über die Schnittstelle der Klasse A bearbeiten können. Ich könnte die Methoden add_B, remove_B usw. in die Schnittstelle von A einfügen, aber das ist eine Menge Code-Duplizierung (diese Situation tritt in vielen Klassen in meinem Programm auf), also würde ich lieber eine Referenz auf die Liste selbst zurückgeben. Das würde jedoch die Kapselung aufheben.
Gibt es eine Standardmethode, um mit dieser Situation umzugehen?