newInstanceメソッド(形式3)
説明
パラメタconsが表すコンストラクタをパラメタargsで実行し,このオブジェクトが表すExplicitメモリブロックに直接生成します。パラメタで指定したクラスのインスタンスだけをExplicitメモリブロックに生成します。パラメタで指定したクラスのインスタンスのコンストラクタなどによる初期化で生成されるオブジェクトについては,Javaヒープに生成します。
形式
public Object newInstance(java.lang.reflect.Constructor cons, Object... args);
パラメタ
- cons:
-
直接生成する配列インスタンスのコンストラクタを指定します。
- args:
-
コンストラクタに渡すパラメタを指定します。
例外
- NullPointerException:
-
パラメタconsまたはパラメタargsの値のどちらかまたは両方がnullです。
- ExceptionInInitializerError:
-
パラメタconsが表すコンストラクタでクラスの初期化に失敗しました。
- InstantiationException:
-
パラメタconsが表すコンストラクタが抽象クラスです。
- IllegalArgumentException:
-
パラメタconsが示すコンストラクタのパラメタとパラメタargsが一致しません。
- InvocationTargetException:
-
パラメタconsまたはパラメタargsが表すコンストラクタの実行で例外が発生しました。
- InaccessibleMemoryAreaException:
-
サポートされていない機能です。
戻り値
このオブジェクトが表すExplicitメモリブロックに生成されたインスタンスへの参照を返却します。
共通エラーチェックで処理できないと判定された場合,java.lang.reflect.Constructor.newInstance(Object... initargs)のパラメタconsをこのオブジェクト,パラメタargsをパラメタとして呼び出し,その結果を返却します。共通エラーチェックについては,「10.6 Explicitメモリブロックを制御する処理のエラーチェック(共通エラーチェック)」を参照してください。
注意事項
パラメタconsには,publicクラスのコンストラクタを与えることを推奨します。