Hallo dedlfix,
es geht hier um Objekte, die anhand einer eindeutigen ID aus der Datenbank geladen werden sollen. Jedes Objekt mit einer bestimmten ID soll nur einmal vorhanden sein, nicht nur, um doppelte DB-Lesezugriffe zu verhindern, sondern vor allem, um eindeutige Schreibzugriffe zu ermöglichen.
Um dieses zu erreichen, bietet die abstrakte Parentklasse aller Objekte sowohl ein statisches Array aller Unterobjekte als auch eine getInstance-Funktion, die entweder ein neues Objekt generiert und zurückgibt oder ein im Array vorhandenes Objekt zurückgibt. Daher ist die Objekterzeugung mit new außerhalb der Objektklassen nicht sinnvoll.
Viele Grüße
Olaf Schneider