newInstance() verwendet den Klassenlademechanismus und new erstellt eine neue Klasse.
Aus JVM-Sicht wird die Klasse möglicherweise nicht geladen, wenn zum Erstellen einer Klasse new verwendet wird. Wenn Sie jedoch die Methode newInstance() verwenden, müssen Sie sicherstellen, dass die Klasse geladen und verbunden ist.
Kopieren Sie den Codecode wie folgt:
String className="test";
Klasse c=Class.forName(className);
Factory=(ExampleInterface)c.newInstance();
newInstance():if-Typ. Ineffizient, nur der Konstruktor ohne Argumente kann aufgerufen werden, geeignet für den Factory-Modus;
Neu: Starker Typ. Relativ effizient. Kann jeden öffentlichen Konstruktor aufrufen