JavaTM 2
Platform
Std. Ed. v1.4.0

java.lang.reflect
クラス Constructor

java.lang.Object
  |
  +--java.lang.reflect.AccessibleObject
        |
        +--java.lang.reflect.Constructor
すべての実装インタフェース:
Member

public final class Constructor
extends AccessibleObject
implements Member

Constructor は、クラスの単一コンストラクタについての情報と単一コンストラクタへのアクセスを提供します。

Constructor は、基になるコンストラクタの仮パラメータと、newInstance() への実パラメータを一致させる場合に、拡張変換が発生することを許可しますが、縮小変換が発生する場合は IllegalArgumentException をスローします。

関連項目:
Member, Class, Class.getConstructors(), Class.getConstructor(Class[]), Class.getDeclaredConstructors()

フィールドの概要
 
インタフェース java.lang.reflect.Member から継承したフィールド
DECLARED, PUBLIC
 
メソッドの概要
 boolean equals(Object obj)
          Constructor を指定されたオブジェクトと比較します。
 Class getDeclaringClass()
          Constructor によって表されるコンストラクタを宣言するクラスを表す Class オブジェクトを返します。
 Class[] getExceptionTypes()
          この Constructor オブジェクトで表される基になるコンストラクタによってスローされるように宣言されている、例外の型を表す Class オブジェクトの配列を返します。
 int getModifiers()
          Constructor オブジェクトによって表されるコンストラクタの Java 言語修飾子を整数として返します。
 String getName()
          Constructor の名称を文字列として返します。
 Class[] getParameterTypes()
          Constructor オブジェクトによって表されるコンストラクタの仮パラメータ型を宣言順で表す Class オブジェクトの配列を返します。
 int hashCode()
          Constructor のハッシュコードを返します。
 Object newInstance(Object[] initargs)
          指定された初期化パラメータで、このコンストラクタの宣言クラスの新しいインスタンスを生成および初期化する場合は、この Constructor オブジェクトによって表されるコンストラクタを使用します。
 String toString()
          Constructor を記述する文字列を返します。
 
クラス java.lang.reflect.AccessibleObject から継承したメソッド
isAccessible, setAccessible, setAccessible
 
クラス java.lang.Object から継承したメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

メソッドの詳細

getDeclaringClass

public Class getDeclaringClass()
Constructor によって表されるコンストラクタを宣言するクラスを表す Class オブジェクトを返します。

定義:
インタフェース Member 内の getDeclaringClass
戻り値:
基本となるメンバーの宣言クラスを表すオブジェクト

getName

public String getName()
Constructor の名称を文字列として返します。これは常に、コンストラクタを宣言したクラスの単純名と同じです。

定義:
インタフェース Member 内の getName
戻り値:
基本となるメンバの単純名

getModifiers

public int getModifiers()
Constructor オブジェクトによって表されるコンストラクタの Java 言語修飾子を整数として返します。修飾子を復号化する場合に、Modifier クラスを使用する必要があります。

定義:
インタフェース Member 内の getModifiers
戻り値:
基本となるメンバーの Java 言語修飾子
関連項目:
Modifier

getParameterTypes

public Class[] getParameterTypes()
Constructor オブジェクトによって表されるコンストラクタの仮パラメータ型を宣言順で表す Class オブジェクトの配列を返します。基になるコンストラクタにパラメータが設定されていない場合には、長さ 0 の配列が返されます。

戻り値:
このオブジェクトが表すコンストラクタのパラメータ型

getExceptionTypes

public Class[] getExceptionTypes()
この Constructor オブジェクトで表される基になるコンストラクタによってスローされるように宣言されている、例外の型を表す Class オブジェクトの配列を返します。コンストラクタが throws 節で例外を宣言していない場合は、長さ 0 の配列を返します。

戻り値:
宣言される例外タイプ。このオブジェクトが表すコンストラクタによりスローされる

equals

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

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - 比較対象の参照オブジェクト
戻り値:
obj 引数に指定されたオブジェクトとこのオブジェクトが等しい場合は true、そうでない場合は false
関連項目:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
Constructor のハッシュコードを返します。このハッシュコードは、クラス名を宣言する基になるコンストラクタのハッシュコードと同じです。

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
Constructor を記述する文字列を返します。この文字列の書式は、存在する場合にはコンストラクタのアクセス修飾子、定義クラスのフルネーム、括弧で囲まれたコンマ区切りのコンストラクタの仮パラメータ型のリストが順番に続きます。以下に例を示します。
    public java.util.Hashtable(int,float)
 

コンストラクタに指定できる修飾子は、アクセス修飾子の publicprotected または private だけです。指定できる修飾子は 1 つだけです。デフォルト (package) アクセスを持つコンストラクタでは、1 つも指定しません。

オーバーライド:
クラス Object 内の toString
戻り値:
このオブジェクトの文字列表現

newInstance

public Object newInstance(Object[] initargs)
                   throws InstantiationException,
                          IllegalAccessException,
                          IllegalArgumentException,
                          InvocationTargetException
指定された初期化パラメータで、このコンストラクタの宣言クラスの新しいインスタンスを生成および初期化する場合は、この Constructor オブジェクトによって表されるコンストラクタを使用します。個々のパラメータは、プリミティブな仮パラメータと一致させるために自動的にラップ解除され、プリミティブパラメータと参照パラメータは両方とも必要に応じてメソッド呼び出し変換の対象になります。

基本となるコンストラクタによって要求される仮パラメータ数が 0 の場合、指定された initargs 配列は長さ 0 または null になります。

要求されたアクセスおよび引数チェックが成功し、インスタンス化を実行する場合、コンストラクタの宣言クラスが初期化されていなければ、初期化が行われます。

コンストラクタが正常に完了すると、新しく生成および初期化されたインスタンスが返されます。

パラメータ:
initargs - コンストラクタ呼び出しに引数として渡すオブジェクトの配列。プリミティブ型の値は、適切な型のラッパーオブジェクト内にラップされる (例、Float 内の float)
戻り値:
このオブジェクトが表すコンストラクタを呼び出すことで作成される新規オブジェクト
例外:
IllegalAccessException - この Constructor オブジェクトが言語アクセス制御を実施し、基本となるコンストラクタにアクセスできない場合
IllegalArgumentException - 実パラメータ数と仮パラメータ数が異なる場合、プリミティブ引数のラップ解除変換が失敗した場合、またはラップ解除後、メソッド呼び出し変換によってパラメータ値を対応する仮パラメータ型に変換できない場合
InstantiationException - 基本となるコンストラクタを宣言するクラスが abstract クラスを表す場合
InvocationTargetException - 基本となるコンストラクタが例外をスローする場合
ExceptionInInitializerError - このメソッドによる初期化が失敗した場合

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.