- すべてのスーパー・インタフェース:
ConstantDesc
,TypeDescriptor
,TypeDescriptor.OfMethod<ClassDesc,
MethodTypeDesc>
public sealed interface MethodTypeDesc extends ConstantDesc, TypeDescriptor.OfMethod<ClassDesc,MethodTypeDesc>
- 導入されたバージョン:
- 12
-
ネストされたクラスのサマリー
インタフェースjava.lang.invoke.TypeDescriptorで宣言されたネストされたクラス/インタフェース
TypeDescriptor.OfField<F extends TypeDescriptor.OfField<F>>, TypeDescriptor.OfMethod<F extends TypeDescriptor.OfField<F>,
M extends TypeDescriptor.OfMethod<F, M>> -
メソッドのサマリー
修飾子と型メソッド説明changeParameterType
(int index, ClassDesc paramType) このタイプと同一のMethodTypeDescを返します。ただし、指定されたタイプに変更されたパラメータ・タイプは1つのみです。changeReturnType
(ClassDesc returnType) 指定された戻り型を除き、これと同一のMethodTypeDescを返します。メソッド・タイプ記述子文字列を返します。default String
パラメータ・タイプおよび戻りタイプの正規名を使用して、このメソッド・タイプの判読可能な記述子を返します。dropParameterTypes
(int start, int end) パラメータ・タイプの範囲が削除されたことを除き、この方法と同じMethodTypeDescを返します。boolean
等価性のために、指定されたオブジェクトをこの記述子と比較します。insertParameterTypes
(int pos, ClassDesc... paramTypes) このパラメータ・タイプが追加されたことを除き、同じMethodTypeDescを返します。static MethodTypeDesc
指定された戻り型およびパラメータ型のないMethodTypeDescを返します。static MethodTypeDesc
戻り型およびパラメータ型が指定されたMethodTypeDescを返します。static MethodTypeDesc
戻り型およびパラメータ・タイプのリストが指定されたMethodTypeDescを返します。static MethodTypeDesc
ofDescriptor
(String descriptor) メソッド記述子文字列を指定してMethodTypeDescを作成します。配列としてパラメータ型を返します。int
MethodTypeDescで説明されているメソッド型のパラメータ数を返します。不変のList
としてパラメータ型を返します。parameterType
(int index) このMethodTypeDescで説明するメソッド・タイプのindex
番目のパラメータのパラメータ・タイプを返します。MethodTypeDescで記述されたメソッド・タイプの戻り型を取得します。
-
メソッドの詳細
-
ofDescriptor
static MethodTypeDesc ofDescriptor(String descriptor) メソッド記述子文字列を指定してMethodTypeDescを作成します。- パラメータ:
descriptor
- メソッド記述子文字列- 戻り値:
- MethodTypeDesc必要なメソッド・タイプを記述
- 例外:
NullPointerException
- 引数がnull
の場合IllegalArgumentException
- 記述子文字列が有効なメソッド記述子ではない場合- Java Virtual Machine仕様を参照してください:
-
4.3.3 メソッド記述子
-
of
static MethodTypeDesc of(ClassDesc returnDesc) 指定された戻り型およびパラメータ型のないMethodTypeDescを返します。- パラメータ:
returnDesc
- 戻り型を説明するClassDesc- 戻り値:
- 指定された戻り型およびパラメータ型なしのMethodTypeDesc
- 例外:
NullPointerException
-returnDesc
がnull
の場合- 導入されたバージョン:
- 21
-
of
static MethodTypeDesc of(ClassDesc returnDesc, List<ClassDesc> paramDescs) 戻り型およびパラメータ・タイプのリストが指定されたMethodTypeDescを返します。- パラメータ:
returnDesc
- 戻り型を説明するClassDescparamDescs
- パラメータ型を記述するClassDescのList- 戻り値:
- 戻り型およびパラメータ・タイプのリストが指定されたMethodTypeDesc
- 例外:
NullPointerException
- 引数またはその内容がnull
の場合IllegalArgumentException
-paramDescs
のいずれかの要素がvoid
のClassDesc
であるかどうか- 導入されたバージョン:
- 21
-
of
static MethodTypeDesc of(ClassDesc returnDesc, ClassDesc... paramDescs) 戻り型およびパラメータ型が指定されたMethodTypeDescを返します。- パラメータ:
returnDesc
- 戻り型を説明するClassDescparamDescs
- ClassDesc s引数タイプの説明- 戻り値:
- MethodTypeDesc必要なメソッド・タイプを記述
- 例外:
NullPointerException
- 引数またはその内容がnull
の場合IllegalArgumentException
-paramDescs
のいずれかの要素がvoid
のClassDesc
であるかどうか
-
returnType
ClassDesc returnType()MethodTypeDescで記述されたメソッド・タイプの戻り型を取得します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> returnType
- 戻り値:
- メソッドの戻り型を説明する
ClassDesc
-
parameterCount
int parameterCount()MethodTypeDescで説明されているメソッド型のパラメータ数を返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> parameterCount
- 戻り値:
- パラメータの数
-
parameterType
ClassDesc parameterType(int index) このMethodTypeDescで説明するメソッド・タイプのindex
番目のパラメータのパラメータ・タイプを返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> parameterType
- パラメータ:
index
- 取得するパラメータの索引- 戻り値:
ClassDesc
必要なパラメータ・タイプの説明- 例外:
IndexOutOfBoundsException
- 索引がハーフ・オープン範囲[0, parameterCount())
外にある場合
-
parameterList
不変のList
としてパラメータ型を返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> parameterList
- 戻り値:
- パラメータ型を説明する
ClassDesc
のList
-
parameterArray
ClassDesc[] parameterArray()配列としてパラメータ型を返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> parameterArray
- 戻り値:
- パラメータ型を説明する
ClassDesc
の配列
-
changeReturnType
MethodTypeDesc changeReturnType(ClassDesc returnType) 指定された戻り型を除き、これと同一のMethodTypeDescを返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> changeReturnType
- パラメータ:
returnType
- 新しい戻り型を説明するClassDesc
- 戻り値:
- MethodTypeDesc必要なメソッド・タイプを記述
- 例外:
NullPointerException
- 引数がnull
の場合
-
changeParameterType
MethodTypeDesc changeParameterType(int index, ClassDesc paramType) このタイプと同一のMethodTypeDescを返します。ただし、指定されたタイプに変更されたパラメータ・タイプは1つのみです。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> changeParameterType
- パラメータ:
index
- 変更するパラメータの索引paramType
- 新しいパラメータ・タイプを説明するClassDesc
- 戻り値:
- MethodTypeDesc必要なメソッド・タイプを記述
- 例外:
NullPointerException
- 引数が1つの場合はnull
IndexOutOfBoundsException
- 索引がハーフ・オープン範囲[0, parameterCount)
外にある場合
-
dropParameterTypes
MethodTypeDesc dropParameterTypes(int start, int end) パラメータ・タイプの範囲が削除されたことを除き、この方法と同じMethodTypeDescを返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> dropParameterTypes
- パラメータ:
start
- 削除する最初のパラメータの索引end
- 削除する最後のパラメータの後の索引- 戻り値:
- MethodTypeDesc必要なメソッド・タイプを記述
- 例外:
IndexOutOfBoundsException
-start
が半オープン範囲[0, parameterCount)
の外側である場合、またはend
がクローズ範囲[0, parameterCount]
の外側である場合、またはstart > end
の場合
-
insertParameterTypes
MethodTypeDesc insertParameterTypes(int pos, ClassDesc... paramTypes) このパラメータ・タイプが追加されたことを除き、同じMethodTypeDescを返します。- 定義:
- インタフェース
TypeDescriptor.OfMethod<ClassDesc,
内のMethodTypeDesc> insertParameterTypes
- パラメータ:
pos
- 最初に挿入されたパラメータを挿入する索引paramTypes
-ClassDesc
挿入する新しいパラメータ・タイプを記述- 戻り値:
- MethodTypeDesc必要なメソッド・タイプを記述
- 例外:
NullPointerException
- 引数またはその内容がnull
の場合IndexOutOfBoundsException
-pos
が閉じた範囲[0, parameterCount]
外にある場合IllegalArgumentException
-paramTypes
のいずれかの要素がvoid
のClassDesc
であるかどうか
-
descriptorString
String descriptorString()メソッド・タイプ記述子文字列を返します。- 定義:
- インタフェース
TypeDescriptor
内のdescriptorString
- 戻り値:
- メソッド・タイプ記述子の文字列
- Java Virtual Machine仕様を参照してください:
-
4.3.3 メソッド記述子
-
displayDescriptor
default String displayDescriptor()パラメータ・タイプおよび戻りタイプの正規名を使用して、このメソッド・タイプの判読可能な記述子を返します。- 戻り値:
- このメソッド・タイプの判読可能な記述子
-
resolveConstantDesc
JVMS 5.4.3の解決動作およびJVMS 5.4.4のアクセス制御動作をエミュレートして、この記述子を反映して解決します。 解決およびアクセス制御コンテキストは、MethodHandles.Lookup
パラメータによって提供されます。 結果の値のキャッシュは実行されません。- 定義:
- インタフェース
ConstantDesc
内のresolveConstantDesc
- APIのノート:
- MethodTypeDescは、パラメータ・スロットが255を超えるメソッドなど、MethodTypeでは表現できないメソッド・タイプ記述子を表すことができるため、解決を試みた場合にエラーが発生することがあります。
- パラメータ:
lookup
- 名前解決およびアクセス制御コンテキストを提供するためのMethodHandles.Lookup
- 戻り値:
- 解決済定数値
- 例外:
ReflectiveOperationException
- 解決の過程でクラス、メソッドまたはフィールドを反映的に解決できなかった場合
-
equals
boolean equals(Object o) 等価性のために、指定されたオブジェクトをこの記述子と比較します。true
を返します。これは、指定されたオブジェクトがMethodTypeDescの両方で同じ引数を持つ場合、その戻り型が等しい場合と、対応するパラメータ型の各ペアが等しい場合のみです。
-