モジュール java.base
パッケージ java.lang.constant

インタフェースClassDesc

    • メソッドのサマリー

      修飾子と型 メソッド 説明
      default ClassDesc arrayType()
      コンポーネント型がこのClassDescによって記述されている配列型のClassDescを返します。
      default ClassDesc arrayType​(int rank)
      指定されたランクの配列型のClassDescを返します。このClassDescは、このClassDescでコンポーネント型を説明します。
      default ClassDesc componentType()
      配列型を説明する場合はこのClassDescのコンポーネント型を返し、そうでない場合はnullを返します。
      String descriptorString()
      このタイプのフィールド・タイプ記述子文字列を返します
      default String displayName()
      この記述子で記述されている型の判読可能な名前を返します。
      boolean equals​(Object o)
      等価性のために、指定されたオブジェクトをこの記述子と比較します。
      default boolean isArray()
      ClassDescが配列型を記述するかどうかを返します。
      default boolean isClassOrInterface()
      このClassDescがクラスまたはインタフェースのタイプを説明するかどうかを返します。
      default boolean isPrimitive()
      このClassDescがプリミティブ・タイプを説明するかどうかを返します。
      default ClassDesc nested​(String nestedName)
      このClassDescで説明されているクラスまたはインタフェース・タイプのネストされたクラスのClassDescを返します。
      default ClassDesc nested​(String firstNestedName, String... moreNestedNames)
      このClassDescで説明されているクラスまたはインタフェース・タイプのネストされたクラスのClassDescを返します。
      static ClassDesc of​(String name)
      クラスまたはインタフェース型に対して、"java.lang.String"などのクラスまたはインタフェースの名前を指定してClassDescを返します。
      static ClassDesc of​(String packageName, String className)
      クラスまたはインタフェース・タイプに対してClassDescを返します。クラスまたはインタフェースのパッケージ名および未修飾(simple)名が指定されます。
      static ClassDesc ofDescriptor​(String descriptor)
      クラス、インタフェース、配列またはプリミティブ・タイプの記述子文字列に対してClassDescを指定します。
      default String packageName()
      クラスまたはインタフェース・タイプを説明する場合は、このClassDescのパッケージ名を返します。
    • メソッドの詳細

      • of

        static ClassDesc of​(String name)
        クラスまたはインタフェース型に対して、"java.lang.String"などのクラスまたはインタフェースの名前を指定してClassDescを返します。 (配列型の記述子を作成するには、ofDescriptor(String)またはarrayType()を使用します。プリミティブ型の記述子を作成するには、ofDescriptor(String)を使用するか、ConstantDescsの事前定義された定数を使用)。
        パラメータ:
        name - 完全修飾された(dot-separated)バイナリ・クラス名
        戻り値:
        希望するクラスの記述はClassDesc
        例外:
        NullPointerException - 引数が1つの場合はnull
        IllegalArgumentException - 名前文字列が正しいフォーマットでない場合
      • of

        static ClassDesc of​(String packageName,
                            String className)
        クラスまたはインタフェース・タイプに対してClassDescを返します。クラスまたはインタフェースのパッケージ名および未修飾(simple)名が指定されます。
        パラメータ:
        packageName - パッケージ名(dot-separated);パッケージ名が空の文字列の場合、そのクラスは名前のないパッケージ内にあるとみなされます。
        className - 未修飾の(simple)クラス名
        戻り値:
        希望するクラスの記述はClassDesc
        例外:
        NullPointerException - 引数が1つの場合はnull
        IllegalArgumentException - パッケージ名またはクラス名の形式が正しくない場合
      • ofDescriptor

        static ClassDesc ofDescriptor​(String descriptor)
        クラス、インタフェース、配列またはプリミティブ・タイプの記述子文字列に対してClassDescを指定します。
        APIの注:
        非配列タイプのフィールド・タイプ記述子文字列は、プリミティブ・タイプ("J", "I", "C", "S", "B", "D", "F", "Z", "V")に対応する1文字のコード、または"L"の文字の後にクラスの完全修飾バイナリ名が続き、";"が次に続く。 配列型のフィールド型記述子は、文字"["に続いてコンポーネント型のフィールド記述子です。 有効な型記述子文字列の例には、"Ljava/lang/String;""I""[I""V""[Ljava/lang/String;"などがあります。詳細は、JVMS 4.3.2 ("フィールド記述子")を参照してください。
        パラメータ:
        descriptor - フィールド記述子文字列
        戻り値:
        希望するクラスの記述はClassDesc
        例外:
        NullPointerException - 引数が1つの場合はnull
        IllegalArgumentException - 名前文字列が正しいフォーマットでない場合
        Java™仮想マシン仕様:
        4.3.2フィールド記述子、4.4.1 CONSTANT_Class_info構造
      • arrayType

        default ClassDesc arrayType​(int rank)
        指定されたランクの配列型のClassDescを返します。このClassDescは、このClassDescでコンポーネント型を説明します。
        パラメータ:
        rank - 配列のランク
        戻り値:
        配列型について説明するClassDesc
        例外:
        IllegalArgumentException - ランクがゼロ未満の場合、または結果の配列タイプのランクが255より大きい場合
        Java™仮想マシン仕様:
        4.4.1 CONSTANT_Class_info構造
      • nested

        default ClassDesc nested​(String nestedName)
        このClassDescで説明されているクラスまたはインタフェース・タイプのネストされたクラスのClassDescを返します。
        APIの注:
        例: 記述子dがクラスjava.util.Mapを説明する場合、クラスjava.util.Map.Entryの記述子はd.nested("Entry")によって取得できます。
        パラメータ:
        nestedName - ネストされたクラスの修飾されていない名前
        戻り値:
        ネストされたクラスを記述するClassDesc
        例外:
        NullPointerException - 引数が1つの場合はnull
        IllegalStateException - このClassDescがクラスまたはインタフェース型を記述しない場合
        IllegalArgumentException - ネストされたクラス名が無効な場合
      • nested

        default ClassDesc nested​(String firstNestedName,
                                 String... moreNestedNames)
        このClassDescで説明されているクラスまたはインタフェース・タイプのネストされたクラスのClassDescを返します。
        パラメータ:
        firstNestedName - ネストされたクラスの最初のレベルの未修飾名
        moreNestedNames - ネストされたクラスの残りのレベルの未修飾名
        戻り値:
        ネストされたクラスを記述するClassDesc
        例外:
        NullPointerException - 引数が1つの場合はnull
        IllegalStateException - このClassDescがクラスまたはインタフェース型を記述しない場合
        IllegalArgumentException - ネストされたクラス名が無効な場合
      • isPrimitive

        default boolean isPrimitive()
        このClassDescがプリミティブ・タイプを説明するかどうかを返します。
        定義:
        インタフェースTypeDescriptor.OfField<ClassDesc>内のisPrimitive
        戻り値:
        このClassDescがプリミティブ・タイプを説明するかどうか
      • isClassOrInterface

        default boolean isClassOrInterface()
        このClassDescがクラスまたはインタフェースのタイプを説明するかどうかを返します。
        戻り値:
        このClassDescがクラス・タイプとインタフェース・タイプのどちらを記述するのか
      • componentType

        default ClassDesc componentType()
        配列型を説明する場合はこのClassDescのコンポーネント型を返し、そうでない場合はnullを返します。
        定義:
        インタフェースTypeDescriptor.OfField<ClassDesc>内のcomponentType
        戻り値:
        コンポーネント・タイプを記述するClassDesc、またはこの記述子が配列タイプを記述しない場合はnull
      • packageName

        default String packageName()
        クラスまたはインタフェース・タイプを説明する場合は、このClassDescのパッケージ名を返します。
        戻り値:
        パッケージ名、またはクラスがデフォルト・パッケージ内にある場合は空の文字列、クラスまたはインタフェース・タイプを記述しない場合はこのClassDesc
      • displayName

        default String displayName()
        この記述子で記述されている型の判読可能な名前を返します。
        実装要件:

        デフォルトの実装では、プリミティブ・タイプに対して単純な名前(e.g., int)、クラスまたはインタフェース・タイプに対して修飾されていないクラス名、またはコンポーネント・タイプの表示名が、配列タイプに対して適切な数の[]ペアで付加されます。

        戻り値:
        判読可能な名前
      • descriptorString

        String descriptorString()
        このタイプのフィールド・タイプ記述子文字列を返します
        定義:
        インタフェースTypeDescriptor内のdescriptorString
        戻り値:
        記述子文字列
        Java™仮想マシン仕様:
        4.3.2フィールド記述子
      • equals

        boolean equals​(Object o)
        等価性のために、指定されたオブジェクトをこの記述子と比較します。 trueを返します。指定されたオブジェクトもClassDescであり、その両方で同じ型を記述している場合のみ返されます。
        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        o - 他のオブジェクト
        戻り値:
        この記述子が他のオブジェクトと等しいかどうか
        関連項目:
        Object.hashCode()HashMap