全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.lang.reflect.Constructor

java.lang.Object
   |
   +----java.lang.reflect.Constructor

Public final class Constructor
extends Object
implements Member
Constructorは、クラスの単独構築子についての情報と単独構築子へのアクセスを提供します。

Constructorは、基となる構築子の正式パラメータと、 newInstance() への実際のパラメータを一致させる場合に、拡張変換が発生することを許しますが、縮小変換が起きる場合は IllegalArgumentException をスローします。

参照:
Member, Class, getConstructors, getConstructor, getDeclaredConstructors

Method Index

 o equals(Object)
この Constructor を指定されたオブジェクトと比較する。
 o getDeclaringClass()
この Constructor オブジェクトによって表される構築子を宣言するクラスを表す Class オブジェクトを返す。
 o getExceptionTypes()
この Constructor オブジェクトによって表される基となる構築子によってスローされる確認済み例外の型を表す Class オブジェクトの配列を返す。
 o getModifiers()
この Constructor オブジェクトによって表される構築子のJava 言語修飾子を整数として返す。
 o getName()
この構築子の名前を文字列として返す。
 o getParameterTypes()
この Constructor オブジェクトによって表される構築子の正式なパラメータの型を宣言順で表す Class オブジェクトの配列を返す。
 o hashCode()
この Constructor のハッシュコードを返す。.
 o newInstance(Object[])
指定された初期化パラメータを使用して構築子の宣言クラスの新規インスタンスを作成、初期化するために、この Constructor オブジェクトによって表される構築子を使用する。
 o toString()
この Constructor を表現する文字列を返す。

Methods

 o getDeclaringClass
  public Class getDeclaringClass()
この Constructor によって表される構築子を宣言するクラスを表す Class オブジェクトを返します。

 o getName
  public String getName()
この Constructor の名称を文字列として返します。これは、つねに、構築子の宣言クラスの名称と同じです。

 o getModifiers
 public native int getModifiers()
この Constructor オブジェクトによって表される構築子の Java 言語修飾子を整数として返します。修飾子をデコードする場合に、 Modifier クラスを使用する必要があります。

参照:
Modifier
 o getParameterTypes
  public Class[] getParameterTypes()
この Constructor オブジェクトによって表される構築子の正式なパラメータ型を宣言順で表す Class オブジェクトの配列を返します。基となる構築子にパラメータが設定されていない場合には長さ 0の配列が返されます。

 o getExceptionTypes
  public Class[] getExceptionTypes()
この Constructor オブジェクトによって表される下にある構築子によってスローされる確認済み例外の型を表す Class オブジェクトの配列を返します。構築子が未確認の例外処理を投げかける場合、長さ 0の配列が返されます。

 o equals
  public boolean equals(Object obj)
この Constructor を指定されたオブジェクトと比較します。オブジェクトが同じ場合には true を返します。2 つの構築子は、同じクラスで宣言され、同じ正式パラメータ型が設定されている場合には同じです。

オーバーライド:
クラス Object 内の equals
 o hashCode
  public int hashCode()
この Constructor のハッシュコードを返します。このハッシュコードは、クラス名を宣言する基となる構築子のハッシュ符号と同じです。

オーバーライド:
クラス Object 内の hashCode
 o toString
  public String toString()
この Constructor を記述する文字列を返します。文字列は、存在する場合には構築子アクセス修飾子、続いて定義クラスのフルネーム、続いて括弧に入れられた、カンマで区切られた構築子の正式パラメタ型の一覧が後に続く形式で書式化されます。例えば:
    public java.util.Hashtable(int,float)
 

構築子へつけることができる修飾子は、アクセス修飾子の publicprotected または private のみです。これらの修飾子の内の 1つだけが表示されるか、もしくは、構築子にデフォルトの(パッケージ)アクセスが設定されている場合にはどれも表示されません。

オーバーライド:
クラスObject 内のtoString
 o newInstance
 public native Object newInstance(Object initargs[]) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException
指定された初期化パラメータが指定された構築子の宣言クラスの新規インスタンスを作成、初期化する場合は、この Constructor オブジェクトによって表される構築子を使用します。個々のパラメータは、プリミティブな正式のパラメータと一致するために自動的にラップ解除され、プリミティブパラメータと参照パラメータの両方とも必要に応じて拡大変換の対象となります。新規に作成、初期化されたオブジェクトを返します。

作成は、次に示すステップで順に進行します。

基となる構築子を宣言するクラスが抽象クラスを表す場合、作成は、 InstantiationExceptionを スローされます。

この Constructor オブジェクトによって Java言語アクセス制御が施行され、基となる構築子にアクセスできなくなると、作成は IllegalAccessException をスローします。

initargs経由で指定される実際のパラメータ数が、基となる構築子により要求される正式なパラメータ数と異なる場合、作成はIllegalAccessExceptionをスローします。

構築子の宣言クラスの新規インスタンスが作成され、そのフィールドはデフォルトの初期値に初期化されます。

指定されたinitargs配列内のそれぞれの実際のパラメータの場合:

対応する正式パラメータにプリミティブ型が指定されている場合、オブジェクト値をそのプリミティブ型の値に変換するためにラップ解除変換が試行されます。この試行が無事に終了しない場合、作成は IllegalArgumentExceptionをスローします。

ラップ解除が行われた後、パラメータ値を識別変換または拡大変換で対応する正式パラメータ型に変換できない場合、作成は、 IllegalArgumentExceptionをスローします。

制御は、新規インスタンスを初期化するために基となる構築子に移動します。構築子に例外をスローすることで突然完了すると、例外はInvocationTargetException に格納され、代わりにnewInstanceの呼び出し者にスローされます。

構築子が正常に完了すると、新規に作成され、初期化されたインスタンスが返されます。

例外: IllegalAccessException
基となる構築子にアクセスできない場合
例外: IllegalArgumentException
実際の正式パラメータの数が異なる場合、またはラップ解除変換が無事終了しない場合
例外: InstantiationException
基となる構築子を宣言するクラスが抽象クラスを表す場合
例外: InvocationTargetException
基となる構築子に例外をスローする場合

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス