インタフェースClassReader
- すべてのスーパー・インタフェース:
- ConstantPool,- Iterable<PoolEntry>
public sealed interface ClassReader extends ConstantPool
AttributeMapperの高度なclassファイル読取りサポート。 classファイル内の任意のオフセットを読み取り、一定のプール・アクセスに加えて様々な数値型(e.g., u2, u4)のデータを読み取ることをサポートします。 
 
 classファイル形式のすべての数値は、「ビッグ・エンディアン」です。
 
 特に指定がないかぎり、すべての範囲外アクセスの結果は、classファイル・データの形式が不正であることを示すIllegalArgumentExceptionになります。 classファイル・データは任意であるため、ユーザーは、不正な形式のデータの解釈を試行する前に、データの構造的整合性を妥当性チェックする必要があります。 
- 導入されたバージョン:
- 24
- 関連項目:
- 
メソッドのサマリー修飾子と型メソッド説明intclassファイルの長さをバイト数で返します。voidcopyBytesTo(BufWriter buf, int offset, int len) classファイルからBufWriterにバイト範囲をコピーします。カスタム属性マッパーの表を返します。intflags()クラスのアクセス・フラグをビット・マスクとして返します。byte[]readBytes(int offset, int len) classファイルの指定された範囲のバイトのコピーを返します。doublereadDouble(int offset) classファイル内の指定されたオフセットでdouble値を返します。readEntry(int offset) classファイル内の指定されたオフセットで索引が指定されている定数プール・エントリを返します。<T extends PoolEntry>
 Tclassファイル内の指定されたオフセットで索引が指定されている特定のタイプの定数プール・エントリを返します。readEntryOrNull(int offset) classファイル内の指定されたオフセットで索引が指定されている定数プール・エントリを返します。指定されたオフセットでの索引がゼロの場合はnullを返します。<T extends PoolEntry>
 TreadEntryOrNull(int offset, Class<T> cls) classファイル内の指定されたオフセットで索引が指定されている特定のタイプの定数プール・エントリを返します。指定されたオフセットでの索引がゼロの場合はnullを返します。floatreadFloat(int offset) classファイル内の指定されたオフセットで浮動小数値を返します。intreadInt(int offset) classファイル内の指定されたオフセットで符号付きintを返します。longreadLong(int offset) classファイル内の指定されたオフセットで符号付きlongを返します。intreadS1(int offset) classファイル内の指定されたオフセットで符号付きバイトを返します。intreadS2(int offset) classファイル内の指定されたオフセットで符号付きバイトを返します。intreadU1(int offset) classファイル内の指定されたオフセットにある符号なしバイトを返します。intreadU2(int offset) classファイル内の指定されたオフセットで符号なしshortを返します。スーパークラスの名前を記述する定数プール・エントリ(存在する場合)を返します。クラスの名前を記述する定数プール・エントリを返します。インタフェースjava.lang.classfile.constantpool.ConstantPoolで宣言されたメソッドbootstrapMethodCount, bootstrapMethodEntry, entryByIndex, entryByIndex, iterator, sizeインタフェースjava.lang.Iterableで宣言されたメソッドforEach, spliterator
- 
メソッドの詳細- 
customAttributesFunction<Utf8Entry, AttributeMapper<?>> customAttributes()カスタム属性マッパーの表を返します。 これは、処理オプションClassFile.AttributeMapperOptionから導出されます。- 戻り値:
- カスタム属性マッパーの表
 
- 
flagsint flags()クラスのアクセス・フラグをビット・マスクとして返します。- 戻り値:
- クラスのアクセス・フラグ(ビット・マスク)
- 関連項目:
 
- 
thisClassEntry
- 
superclassEntryOptional<ClassEntry> superclassEntry()スーパークラスの名前を記述する定数プール・エントリ(存在する場合)を返します。- 戻り値:
- スーパークラスの名前を記述する定数プール・エントリ(存在する場合)
- 関連項目:
 
- 
classfileLengthint classfileLength()classファイルの長さをバイト数で返します。- 戻り値:
- classファイルの長さ(バイト数)
 
- 
readEntryPoolEntry readEntry(int offset) classファイル内の指定されたオフセットで索引が指定されている定数プール・エントリを返します。- APIのノート:
- 特定のタイプのエントリのみが必要な場合は、readEntry(int, Class)を使用します。
- パラメータ:
- offset-- classファイル内の索引のオフセット
- 戻り値:
- classファイル内の指定されたオフセットで索引が指定されている定数プール・エントリ
- スロー:
- ConstantPoolException- 索引が定数プール・サイズの範囲外である場合、またはゼロの場合
 
- 
readEntryclassファイル内の指定されたオフセットで索引が指定されている特定のタイプの定数プール・エントリを返します。- 型パラメータ:
- T- 入力タイプ
- パラメータ:
- offset-- classファイル内の索引のオフセット
- cls- 入力タイプ
- 戻り値:
- classファイル内で指定されたオフセットで索引が指定されている特定のタイプの定数プール・エントリ
- スロー:
- ConstantPoolException- 索引が定数プール・サイズの範囲外であるか、ゼロであるか、またはエントリが指定のタイプでない場合
 
- 
readEntryOrNullPoolEntry readEntryOrNull(int offset) classファイル内の指定されたオフセットで索引が指定されている定数プール・エントリを返します。指定されたオフセットでの索引がゼロの場合はnullを返します。- APIのノート:
- 特定のタイプのエントリのみが必要な場合は、readEntryOrNull(int, Class)を使用します。
- パラメータ:
- offset-- classファイル内の索引のオフセット
- 戻り値:
- classファイル内の指定されたオフセットで索引が指定されている定数プール・エントリ、または指定されたオフセットでの索引がゼロの場合は- null
- スロー:
- ConstantPoolException- 索引が定数プール・サイズの範囲外である場合
 
- 
readEntryOrNullclassファイル内の指定されたオフセットで索引が指定されている特定のタイプの定数プール・エントリを返します。指定されたオフセットでの索引がゼロの場合はnullを返します。- 型パラメータ:
- T- 入力タイプ
- パラメータ:
- offset-- classファイル内の索引のオフセット
- cls- 入力タイプ
- 戻り値:
- classファイル内の指定されたオフセットで索引が指定されている特定のタイプの定数プール・エントリ、または指定されたオフセットでの索引がゼロの場合は- null
- スロー:
- ConstantPoolException- 索引が定数プール・サイズの範囲外であるか、ゼロであるか、またはエントリが指定のタイプでない場合
 
- 
readU1int readU1(int offset) classファイル内の指定されたオフセットにある符号なしバイトを返します。 バイトを読み取り、ゼロでintに拡張します。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内で指定されたオフセットにある符号なしバイト
 
- 
readU2int readU2(int offset) classファイル内の指定されたオフセットで符号なしshortを返します。 2バイトの値を読み取り、ゼロでintに拡張します。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内で指定されたオフセットにある符号なしshort
 
- 
readS1int readS1(int offset) classファイル内の指定されたオフセットで符号付きバイトを返します。 バイトを読み取り、それをintに署名します。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内の指定されたオフセットにある署名付きバイト
 
- 
readS2int readS2(int offset) classファイル内の指定されたオフセットで符号付きバイトを返します。 2バイト値を読み取り、それをintに署名します。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内の指定されたオフセットにある署名付きバイト
 
- 
readIntint readInt(int offset) classファイル内の指定されたオフセットで符号付きintを返します。 4バイトの値を読み取ります。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内の指定されたオフセットにある符号付きint
 
- 
readLonglong readLong(int offset) classファイル内の指定されたオフセットで符号付きlongを返します。 8バイトの値を読み取ります。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内の指定されたオフセットでの符号付きlong
 
- 
readFloatfloat readFloat(int offset) classファイル内の指定されたオフセットで浮動小数値を返します。 4バイトの値を読み取ります。変換では、 floatのすべてのNaN値を1つの「"canonical" NaN値」に縮小できる場合とできない場合があります。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内で指定されたオフセットにあるfloat値
 
- 
readDoubledouble readDouble(int offset) classファイル内の指定されたオフセットでdouble値を返します。 8バイトの値を読み取ります。変換では、 doubleのすべてのNaN値を1つの「"canonical" NaN値」に縮小できる場合とできない場合があります。- パラメータ:
- offset-- classファイル内のオフセット
- 戻り値:
- classファイル内の指定されたオフセットでのdouble値
 
- 
readBytesbyte[] readBytes(int offset, int len) classファイルの指定された範囲のバイトのコピーを返します。- パラメータ:
- offset-- classファイル内のオフセット
- len- 範囲の長さ
- 戻り値:
- classファイルの指定された範囲のバイトのコピー
 
- 
copyBytesTo
 
-