1

重複の可能性:
クラス名を使用してインスタンスを作成し、コンストラクターを呼び出す

メソッドに渡された文字列の内容に基づいてオブジェクトを作成するにはどうすればよいですか? 例えば

createObj(String nameclass){
 **class passed** obj;
}
4

1 に答える 1

6

Class.newInstance()クラスのインスタンスを構築するために使用できます。Class<>ただし、を使用してオブジェクトを取得する必要がありますClass.forName(...)

<T> T createObj(String nameclass) throws ClassNotFoundException,
        InstantiationException, IllegalAccessException {

    Class<T> clazz = (Class<T>) Class.forName(nameclass);

    // assumes the target class has a no-args Constructor
    return clazz.newInstance();
}   
于 2012-09-18T22:22:08.693 に答える