特定のタイプ (たとえば、MyClass) のオブジェクトを作成するファクトリ クラスがあります。
ファクトリ クラスは特定のパッケージに属しており、テスト目的で、そのパッケージの実装と新しいバージョンを動的に切り替えたいと考えています。
たとえば、元のパッケージがpack1で、新しいバージョンがpack2で、クラス名がpack1.Factoryと であるとしpack2.Factoryます。pack1またはの選択はpack2、プロパティ ファイルの単純なパラメータを介して指定されます。さらに、MyClassタイプは両方のパッケージで共通であり、プレーンなバニラ Java (つまり、サードパーティ ライブラリではない) のみを使用する必要があります。
または (指定されたプロパティに応じて)のClass.forName()いずれかをロードし、リフレクションを介してすべてのファクトリメソッドを呼び出すために使用することを考えています。pack1.Factorypack2.Factory
それが最善のアプローチですか?