-1
文字列としてクラス名を持つとします。文字列としてクラス名からオブジェクトをインスタンス化します。
MyClass myObj = MyClass.class.cast(instance);
基本的に私はMyClass
にObject
のインスタンスを変換したい:私はリフレクションを使用して、このクラスをインスタンス化し、このようなコードを使用せずに、タイプMyClass
なくObject
のオブジェクトを持つことができますどのように
String myClass = "com.whatever.MyClass";
コード内でMyClass
を使用せずにクラス名を文字列として認識するだけで済みます。
あなたがすることはできません。これを 'MyClass'型の参照に代入するには、コンパイル時に' MyClass'が何であるかを知る必要があります。 –
それを行う唯一の方法は、http://stackoverflow.com/questions/2215843/using-reflection-in-java-to-create-a-new-instance-with-the-reference-variable-ty – Tunaki
あなたですファクトリパターンを見て、それらを何らかの種類の文字列インデックス付きコンテナに入れて呼び出すことができます。それがC++で行われた方法ですが、Javaについてはわかりません。 –