たとえば、ファクトリ メソッドの実装で、いくつかのクラスをそれぞれの静的初期化と共にロードする必要があります。
以下の構文を使用してクラスを参照するだけでは、JVM は静的初期化部分を実行しません。実際、JVM はクラスをロードしますか?
Class<Shape> shapeClass = Shape.class;
また
Shape s = null;
しかし、class.forname() を使用すると、静的な初期化が実行されます。
Class.forname("Shape");
問題は、これが静的初期化とともに Java クラスをロードする唯一の方法かどうかです。それとも他の方法がありますか?class.forname() を使用するとパフォーマンスが大幅に低下しますか?