Machbar ist alles. Aber speziell das was Du hier ansprichst ist der kürzeste Weg ins Chaos. Es verletzt die OOP Charta zur Frage der Kapselung dermaßen, daß es eine Wartung von Programmen fast unmöglich macht und auch das Debugging erschwert.
Meine Empfehlung:
- prüfe ob defaults gesetzt werden können,
- bestimme das Verhalten von Instanzen außschließlich über die in der Instanz selbst gekapselten Properties
Und im Grunde genommen braucht OOP überhaupt keine statisch deklarierte Typen.
Freundschaft 😉