T
- コンストラクタが宣言されているクラスpublic final class Constructor<T> extends AccessibleObject implements GenericDeclaration, Member
Constructor
は、クラスの単一コンストラクタについての情報と単一コンストラクタへのアクセスを提供します。
Constructor
は、基になるコンストラクタの仮パラメータと、newInstance() への実パラメータを一致させる場合に、拡張変換が発生することを許可しますが、縮小変換が発生する場合は IllegalArgumentException
をスローします。
修飾子と型 | メソッドと説明 |
---|---|
boolean |
equals(Object obj)
この
Constructor を指定されたオブジェクトと比較します。 |
<T extends Annotation> |
getAnnotation(Class<T> annotationClass)
存在する場合は、この要素の指定された型の注釈を返し、そうでない場合は null を返します。
|
Annotation[] |
getDeclaredAnnotations()
この要素に直接存在するすべての注釈を返します。
|
Class<T> |
getDeclaringClass()
Constructor オブジェクトによって表されるコンストラクタを宣言するクラスを表す Class オブジェクトを返します。 |
Class<?>[] |
getExceptionTypes()
この
Constructor オブジェクトで表される基になるコンストラクタによってスローされるように宣言されている、例外の型を表す Class オブジェクトの配列を返します。 |
Type[] |
getGenericExceptionTypes()
この
Constructor オブジェクトによってスローされることが宣言されている例外を表す Type オブジェクトの配列を返します。 |
Type[] |
getGenericParameterTypes()
Constructor オブジェクトによって表されるコンストラクタの仮パラメータ型を宣言順で表す Type オブジェクトの配列を返します。 |
int |
getModifiers()
Constructor オブジェクトによって表されるコンストラクタの Java 言語修飾子を整数として返します。 |
String |
getName()
このコンストラクタの名前を文字列として返します。
|
Annotation[][] |
getParameterAnnotations()
この
Constructor オブジェクトにより表されたメソッドの仮パラメータの注釈を表す配列の配列を、宣言順に返します。 |
Class<?>[] |
getParameterTypes()
Constructor オブジェクトによって表されるコンストラクタの仮パラメータ型を宣言順で表す Class オブジェクトの配列を返します。 |
TypeVariable<Constructor<T>>[] |
getTypeParameters()
GenericDeclaration オブジェクトによって表されるジェネリック宣言で宣言された型変数を表す TypeVariable オブジェクトの配列を宣言順に返します。 |
int |
hashCode()
この
Constructor のハッシュコードを返します。 |
boolean |
isSynthetic()
このコンストラクタが合成コンストラクタである場合は
true を返し、そうでない場合は false を返します。 |
boolean |
isVarArgs()
このコンストラクタが可変数の引数を取るように宣言されていた場合は
true を返し、そうでない場合は false を返します。 |
T |
newInstance(Object... initargs)
指定された初期化パラメータで、このコンストラクタの宣言クラスの新しいインスタンスを作成および初期化する場合は、この
Constructor オブジェクトによって表されるコンストラクタを使用します。 |
String |
toGenericString()
型パラメータを含む、この
Constructor を記述する文字列を返します。 |
String |
toString()
この
Constructor を記述する文字列を返します。 |
getAnnotations, isAccessible, isAnnotationPresent, setAccessible, setAccessible
public Class<T> getDeclaringClass()
Constructor
オブジェクトによって表されるコンストラクタを宣言するクラスを表す Class
オブジェクトを返します。getDeclaringClass
、インタフェース: Member
public String getName()
public int getModifiers()
Constructor
オブジェクトによって表されるコンストラクタの Java 言語修飾子を整数として返します。修飾子の復号化には、Modifier
クラスを使用する必要があります。getModifiers
、インタフェース: Member
Modifier
public TypeVariable<Constructor<T>>[] getTypeParameters()
GenericDeclaration
オブジェクトによって表されるジェネリック宣言で宣言された型変数を表す TypeVariable
オブジェクトの配列を宣言順に返します。基になるジェネリック宣言で型変数が宣言されていない場合は、長さ 0 の配列が返されます。getTypeParameters
、インタフェース: GenericDeclaration
TypeVariable
オブジェクトの配列GenericSignatureFormatError
- このジェネリック宣言のジェネリックシグニチャーが『Java™ 仮想マシン仕様』で規定される書式に適合しない場合public Class<?>[] getParameterTypes()
Constructor
オブジェクトによって表されるコンストラクタの仮パラメータ型を宣言順で表す Class
オブジェクトの配列を返します。基になるコンストラクタにパラメータが設定されていない場合には、長さ 0 の配列が返されます。public Type[] getGenericParameterTypes()
Constructor
オブジェクトによって表されるコンストラクタの仮パラメータ型を宣言順で表す Type
オブジェクトの配列を返します。基になるメソッドにパラメータが設定されていない場合には、長さ 0 の配列が返されます。
仮パラメータ型が、パラメータ化された型の場合、返される Type
オブジェクトは、ソースコードで使用される実際の型パラメータを正確に反映しなければいけません。
仮パラメータ型が、型変数またはパラメータ化された型の場合、仮パラメータ型は作成されます。そうでない場合、例外タイプは解決されます。
Type
の配列GenericSignatureFormatError
- ジェネリックメソッドのシグニチャーが『Java™ 仮想マシン仕様』で規定される書式に適合しない場合TypeNotPresentException
- 基本となるメソッドのパラメータ型のいずれかが、存在しない型宣言を参照する場合MalformedParameterizedTypeException
- 基本となるメソッドのパラメータ型のいずれかが、なんらかの理由によりインスタンス化できないパラメータ化された型を参照する場合public Class<?>[] getExceptionTypes()
Constructor
オブジェクトで表される基になるコンストラクタによってスローされるように宣言されている、例外の型を表す Class
オブジェクトの配列を返します。コンストラクタが throws
節で例外を宣言していない場合は、長さ 0 の配列を返します。public Type[] getGenericExceptionTypes()
Constructor
オブジェクトによってスローされることが宣言されている例外を表す Type
オブジェクトの配列を返します。基本となるメソッドが throws
節で例外を宣言していない場合は、長さ 0 の配列を返します。
例外タイプが、型変数またはパラメータ化された型の場合、例外タイプは作成されます。そうでない場合、例外タイプは解決されます。
GenericSignatureFormatError
- ジェネリックメソッドのシグニチャーが『Java™ 仮想マシン仕様』で規定される書式に適合しない場合TypeNotPresentException
- 基本となるメソッドの throws
節が存在しない型宣言を参照する場合MalformedParameterizedTypeException
- 基本となるメソッドの throws
節が、なんらかの理由によりインスタンス化できないパラメータ化された型を参照する場合public boolean equals(Object obj)
Constructor
を指定されたオブジェクトと比較します。オブジェクトが同じ場合には true を返します。2 つの Constructor
オブジェクトは、同じクラスで宣言され、同じ仮パラメータ型が設定されている場合には同じです。equals
、クラス: Object
obj
- 比較対象の参照オブジェクト。true
、それ以外の場合は false
。Object.hashCode()
, HashMap
public int hashCode()
Constructor
のハッシュコードを返します。このハッシュコードは、クラス名を宣言する基になるコンストラクタのハッシュコードと同じです。hashCode
、クラス: Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public String toString()
Constructor
を記述する文字列を返します。この文字列の書式は、(存在する場合には) コンストラクタのアクセス修飾子、定義クラスの完全指定名、括弧で囲まれたコンマ区切りのコンストラクタの仮パラメータ型のリストが順番に続きます。たとえば、
public java.util.Hashtable(int,float)
コンストラクタに指定できる修飾子は、アクセス修飾子の public
、protected
または private
だけです。指定できる修飾子は 1 つだけです。デフォルト (package) アクセスを持つコンストラクタでは、1 つも指定しません。
public String toGenericString()
Constructor
を記述する文字列を返します。この文字列の書式は、(存在する場合には) コンストラクタのアクセス修飾子、山括弧で囲まれたコンマ区切りのコンストラクタの型パラメータリスト、宣言クラスの完全指定名、括弧で囲まれたコンマ区切りのコンストラクタのジェネリック仮パラメータ型のリストが順番に続きます。
このコンストラクタが可変数の引数を取るように宣言されていた場合、最後のパラメータは「Type[]」ではなく「Type...」と表されます。
アクセス修飾子同士、およびアクセス修飾子と型パラメータや戻り値との区切りには空白文字が使用されます。型パラメータがない場合、型パラメータのリストは省略されます。 型パラメータのリストが存在する場合、リストとクラス名は空白文字で区切られます。コンストラクタが例外をスローするように宣言されている場合、パラメータのリストのあとに空白、「throws
」という文字列、コンマ区切りのスローされる例外型が順番に続きます。
コンストラクタに指定できる修飾子は、アクセス修飾子の public
、protected
または private
だけです。指定できる修飾子は 1 つだけです。デフォルト (package) アクセスを持つコンストラクタでは、1 つも指定しません。
Constructor
を記述する文字列public T newInstance(Object... initargs) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException
Constructor
オブジェクトによって表されるコンストラクタを使用します。個別のパラメータは、プリミティブ仮パラメータと一致させるために自動的にラップ解除され、プリミティブおよび参照パラメータは両方とも必要に応じてメソッド呼び出し変換の対象になります。
基本となるコンストラクタによって要求される仮パラメータ数が 0 の場合、指定された initargs
配列は長さ 0 または null になります。
コンストラクタの宣言クラスが非 static コンテキスト内の内部クラスである場合、コンストラクタへの最初の引数は囲むインスタンスである必要があります。『Java™ 言語仕様』のセクション 15.9.3 を参照してください。
要求されたアクセスおよび引数チェックが成功し、インスタンス化を実行する場合、コンストラクタの宣言クラスが初期化されていなければ、初期化が行われます。
コンストラクタが正常に完了すると、新しく生成および初期化されたインスタンスが返されます。
initargs
- コンストラクタ呼び出しに引数として渡すオブジェクトの配列。プリミティブ型の値は、適切な型のラッパーオブジェクト内にラップされる (例、Float
内の float
)IllegalAccessException
- この Constructor
オブジェクトが Java 言語アクセス制御を実施し、基本となるコンストラクタにアクセスできない場合。IllegalArgumentException
- 実パラメータ数と仮パラメータ数が異なる場合、プリミティブ引数のラップ解除変換が失敗した場合、またはラップ解除後、メソッド呼び出し変換によってパラメータ値を対応する仮パラメータ型に変換できない場合、このコンストラクタが列挙型に関連している場合。InstantiationException
- 基本となるコンストラクタを宣言するクラスが abstract クラスを表す場合。InvocationTargetException
- 基本となるコンストラクタが例外をスローする場合。ExceptionInInitializerError
- このメソッドによる初期化に失敗した場合。public boolean isVarArgs()
true
を返し、そうでない場合は false
を返します。true
。public boolean isSynthetic()
true
を返し、そうでない場合は false
を返します。isSynthetic
、インタフェース: Member
public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
AnnotatedElement
getAnnotation
、インタフェース: AnnotatedElement
getAnnotation
、クラス: AccessibleObject
annotationClass
- 注釈型に対応する Class オブジェクトNullPointerException
- 指定された注釈クラスが null の場合public Annotation[] getDeclaredAnnotations()
AnnotatedElement
getDeclaredAnnotations
、インタフェース: AnnotatedElement
getDeclaredAnnotations
、クラス: AccessibleObject
public Annotation[][] getParameterAnnotations()
Constructor
オブジェクトにより表されたメソッドの仮パラメータの注釈を表す配列の配列を、宣言順に返します。基本となるメソッドがパラメータを含まない場合は、長さゼロの配列を返します。メソッドに 1 つ以上のパラメータがある場合、注釈を含まないパラメータごとに長さゼロの入れ子の配列を返します。返された配列に含まれる注釈オブジェクトは直列化できます。このメソッドの呼び出し元は、返された配列を自由に変更できます。 この変更は、ほかの呼び出し元に返された配列に影響を及ぼしません。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.