Normal
Mir fallen da zwei Unterschiede ein:wenn man die Factory zur Implementierung legt und alles bis auf die Factory Package Private macht, kann jemand anderes daherkommen und einfach eine Klasse schreiben und in das gleiche Package legen - die ganze Unsichtbarkeit ist dahinwenn man alle Implementierungsklassen als innere Klassen realisiert, dann hat man den Nachteil, dass alle Implementierungsklassen in der gleichen Datei stehen
Mir fallen da zwei Unterschiede ein: