列挙型クラスClassFile.ShortJumpsOption
java.lang.Object
java.lang.Enum<ClassFile.ShortJumpsOption>
java.lang.classfile.ClassFile.ShortJumpsOption
- すべての実装されたインタフェース:
Serializable
,ClassFile.Option
,Comparable<ClassFile.ShortJumpsOption>
,Constable
- 含まれているインタフェース:
ClassFile
public static enum ClassFile.ShortJumpsOption extends Enum<ClassFile.ShortJumpsOption> implements ClassFile.Option
必要に応じて、短いジャンプを自動的に同等の指示に書き換えるかどうかを示すオプション。 デフォルトは
FIX_SHORT_JUMPS
で、自動的にリライトされます。
物理的な制限により、一部のタイプの命令では、このようなオフセットをエンコードするためにs2
を使用するため、bciオフセットが -32768未満または32767を超える特定のジャンプ・ターゲットをエンコードできません。 (code
配列の最大長は65535です。) これらのタイプの命令は、"ショート・ジャンプ"と呼ばれます。
リライトを無効にすると、生成された class
ファイルの物理的正確性が保証され、生成されたclass
ファイルが安定している場合、最初にオーバーフローしたフォワード・ジャンプの失敗によるオーバーヘッドを回避できます。
- 導入されたバージョン:
- 24
- 関連項目:
-
ネストされたクラスのサマリー
クラスjava.lang.Enumで宣言されたネストされたクラス/インタフェース
Enum.EnumDesc<E extends Enum<E>>
-
列挙型定数のサマリー
列挙型定数 -
メソッドのサマリー
修飾子と型メソッド説明static ClassFile.ShortJumpsOption
指定された名前を持つこのクラスのenum定数を返します。static ClassFile.ShortJumpsOption[]
values()
この列挙クラスの定数を含む配列を宣言されている順序で 返します。
-
列挙型定数の詳細
-
FIX_SHORT_JUMPS
public static final ClassFile.ShortJumpsOption FIX_SHORT_JUMPS必要に応じて、短いジャンプをlongに自動的に変換します。無効な命令モデルの場合、
CodeBuilder
は、同じ効果を達成するために別の命令またはいくつかの他の命令を生成する場合があります。 -
FAIL_ON_SHORT_JUMPS
public static final ClassFile.ShortJumpsOption FAIL_ON_SHORT_JUMPS短いジャンプ・オーバーフローの場合、IllegalArgumentException
で失敗します。これは、生成された
class
ファイルの物理的正確性を確保し、フォワード・ジャンプのオーバーフローが失敗した最初の試行によるオーバーヘッドを回避するのに役立ちます。
-
-
メソッドの詳細
-
values
public static ClassFile.ShortJumpsOption[] values()この列挙クラスの定数を含む配列を宣言されている順序で 返します。- 戻り値:
- この列挙クラスの定数を宣言されている順序で含む配列
-
valueOf
public static ClassFile.ShortJumpsOption valueOf(String name) 指定された名前を持つこのクラスのenum定数を返します。 文字列は、このクラスでenum定数を宣言するために使用される識別子と正確に一致する必要があります。 (不適切な空白文字は許可されません。)- パラメータ:
name
- 返される列挙型定数の名前。- 戻り値:
- 指定された名前を持つ列挙型定数
- スロー:
IllegalArgumentException
- この列挙型クラスに指定された名前の定数がない場合NullPointerException
- 引数がnullの場合
-