互換性に関するノート: プラットフォームの将来のリリースでは、このインタフェースにメソッドが追加される可能性があります。
- 導入されたバージョン:
- 1.6
- 関連項目:
-
ネストされたクラスのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明List<? extends AnnotationMirror>
直接存在しているか継承を介して存在しているかにかかわらず、要素に存在しているすべての注釈を返します。getAllMembers
(TypeElement type) 継承されているか直接宣言されているかにかかわらず、型要素のすべてのメンバーを返します。default Set<? extends ModuleElement>
現在の環境内のすべてのモジュール要素を返します。default Set<? extends PackageElement>
指定された正規名を持つすべてのパッケージ要素を返します。default Set<? extends TypeElement>
指定された正規名を持つすべての型要素を返します。getBinaryName
(TypeElement type) 型要素のバイナリ名を返します。getConstantExpression
(Object value) プリミティブ値または文字列を表す定数式のテキストを返します。要素のドキュメンテーション("Javadoc")コメントのテキストを返します。Map<? extends ExecutableElement,
? extends AnnotationValue> デフォルトを含む注釈の要素の値を返します。default JavaFileObject
この要素のファイル・オブジェクトを返すか、そのようなファイル・オブジェクトがない場合はnull
を返します。default ModuleElement
getModuleElement
(CharSequence name) モジュール要素の完全修飾名を返します。default ModuleElement
要素のモジュールを返します。getName
(CharSequence cs) 引数と同じ文字シーケンスを持つ名前を返します。default Elements.Origin
指定された注釈ミラーのoriginを返します。default Elements.Origin
指定された要素のoriginを返します。default Elements.Origin
getOrigin
(ModuleElement m, ModuleElement.Directive directive) 与えられたモジュール・ディレクティブのoriginを返します。default TypeElement
このような包含要素が存在する場合、要素が含まれる最も外側の型要素を返します。それ以外の場合は、null
を返します。パッケージが環境内で一意に決定可能な場合、完全修飾名を指定してパッケージを返します。default PackageElement
getPackageElement
(ModuleElement module, CharSequence name) 指定されたモジュールから見た完全修飾名が与えられたパッケージを返します。要素のパッケージを返します。getTypeElement
(CharSequence name) 型要素が環境内で一意に決定可能な場合、正規名を指定して型要素を返します。default TypeElement
getTypeElement
(ModuleElement module, CharSequence name) 指定されたモジュールから見た正式名が与えられた型要素を返します。boolean
型、メソッド、またはフィールドが別のものを覆い隠しているかどうかをテストします。default boolean
isAutomaticModule
(ModuleElement module) モジュール要素が自動モジュールの場合はtrue
、そうでない場合はfalse
を返します。default boolean
実行可能要素がブリッジ・メソッドであればtrue
を、そうでなければfalse
を返します。default boolean
実行可能要素がレコードの正規コンストラクタであると判断できる場合はtrue
を返し、それ以外の場合はfalse
を返します。default boolean
実行可能要素がレコードのコンパクト・コンストラクタであると判断できる場合はtrue
を返し、それ以外の場合はfalse
を返します。boolean
要素が非推奨の場合はtrue
、それ以外の場合はfalse
を返します。boolean
この型要素が関数型インタフェースである場合はtrue
を返し、そうでない場合はfalse
を返します。boolean
overrides
(ExecutableElement overrider, ExecutableElement overridden, TypeElement type) あるメソッドが指定されたクラスまたはインタフェースのメンバーとして、別のメソッドをオーバーライドするかどうかをテストします。void
printElements
(Writer w, Element... elements) 要素の表現を、指定された順序で、指定されたライターに出力します。default RecordComponentElement
recordComponentFor
(ExecutableElement accessor) 指定されたアクセッサのレコード・コンポーネントを返します。
-
メソッドの詳細
-
getPackageElement
PackageElement getPackageElement(CharSequence name) パッケージが環境内で一意に決定可能な場合、完全修飾名を指定してパッケージを返します。 モジュールを使用して実行している場合、指定された名前のパッケージが2段階のプロセスで検索されます:getPackageElement(ModuleElement, CharSequence)
によって返された指定された名前を持つ空でないパッケージを検索します。ここで、指定されたModuleSymbolは任意の「ルート・モジュール」です。- 上記で空のリストが生成された場合は、
all modules
で指定された名前の監視可能パッケージを検索
null
が返されます。- パラメータ:
name
- 完全修飾パッケージ名、または名前のないパッケージの空の文字列- 戻り値:
- 指定されたパッケージ。パッケージを一意に判定できない場合は
null
。
-
getPackageElement
default PackageElement getPackageElement(ModuleElement module, CharSequence name) 指定されたモジュールから見た完全修飾名が与えられたパッケージを返します。- 実装要件:
- このメソッドのデフォルト実装は
null
を返します。 - パラメータ:
module
- ルックアップが起きる相対的なモジュールname
- 完全修飾パッケージ名、または名前のないパッケージの空の文字列- 戻り値:
- 指定されたパッケージ、または見つからない場合は
null
- 導入されたバージョン:
- 9
- 関連項目:
-
getAllPackageElements
default Set<? extends PackageElement> getAllPackageElements(CharSequence name) 指定された正規名を持つすべてのパッケージ要素を返します。 パッケージ要素が異なるモジュールにある場合、同じ正規名を持つ複数のパッケージ要素が存在する可能性があります。- 実装要件:
- このメソッドのデフォルトの実装では、
getAllModuleElements
が呼び出され、結果が保存されます。 モジュールのセットが空の場合、name引数を渡すとgetPackageElement(name)
が呼び出されます。getPackageElement(name)
がnull
の場合、空のパッケージ要素のセットが返されます。それ以外の場合、見つかったpackage要素を持つ単一要素セットが返されます。 モジュールのセットが空でない場合、モジュールは反復され、getPackageElement(module, name)
の非null
結果はすべてセットに蓄積されます。 セットが返されます。 - パラメータ:
name
- 正規名- 戻り値:
- パッケージ要素、または名前を持つパッケージが見つからない場合は空のセット
- 導入されたバージョン:
- 9
- 関連項目:
-
getTypeElement
TypeElement getTypeElement(CharSequence name) 型要素が環境内で一意に決定可能な場合、正規名を指定して型要素を返します。 モジュールを使用して実行している場合、指定された名前の型要素が2段階のプロセスで検索されます:getTypeElement(ModuleElement, CharSequence)
によって返された指定された名前を持つ型要素を検索します。ここで、指定されたModuleSymbolは任意の「ルート・モジュール」です。- 上記で空のリストが生成された場合は、指定された名前の監視可能なタイプ要素を
all modules
で検索
null
が返されます。- パラメータ:
name
- 正規名- 戻り値:
- 名前付きの型要素。型要素を一意に判定できない場合は
null
。
-
getTypeElement
default TypeElement getTypeElement(ModuleElement module, CharSequence name) 指定されたモジュールから見た正式名が与えられた型要素を返します。- 実装要件:
- このメソッドのデフォルト実装は
null
を返します。 - パラメータ:
module
- ルックアップが起きる相対的なモジュールname
- 正規名- 戻り値:
- 名前付き型要素。見つからない場合は
null
- 導入されたバージョン:
- 9
- 関連項目:
-
getAllTypeElements
default Set<? extends TypeElement> getAllTypeElements(CharSequence name) 指定された正規名を持つすべての型要素を返します。 型要素が異なるモジュールにある場合、同じ正準名を持つ複数の型要素が存在する可能性があります。- 実装要件:
- このメソッドのデフォルトの実装では、
getAllModuleElements
が呼び出され、結果が保存されます。 モジュールのセットが空の場合、name引数を渡すとgetTypeElement(name)
が呼び出されます。getTypeElement(name)
がnull
の場合、型要素の空のセットが返されます。それ以外の場合は、見つかった型要素を持つ単一要素セットが返されます。 モジュールのセットが空でない場合、モジュールは反復され、getTypeElement(module, name)
の非null
結果はすべてセットに蓄積されます。 セットが返されます。 - パラメータ:
name
- 正規名- 戻り値:
- 型要素、または名前を持つ型が見つからない場合は空のセット
- 導入されたバージョン:
- 9
- 関連項目:
-
getModuleElement
default ModuleElement getModuleElement(CharSequence name) モジュール要素の完全修飾名を返します。 リクエストされたモジュールが見つからない場合、null
が戻されます。 モジュールが見つからない1つの状況は、モジュールなしで「ソース・バージョン」用に構成された注釈処理環境など、環境にモジュールが含まれていない場合です。- 実装要件:
- このメソッドのデフォルト実装は
null
を返します。 - パラメータ:
name
- 名前、または名前のないモジュールの空の文字列- 戻り値:
- 指定されたモジュール要素、または見つからない場合は
null
- 導入されたバージョン:
- 9
- 関連項目:
-
getAllModuleElements
default Set<? extends ModuleElement> getAllModuleElements()現在の環境内のすべてのモジュール要素を返します。 モジュールが存在しない場合、空のセットが返されます。 モジュールが存在しない1つの状況は、モジュールなしで「ソース・バージョン」用に構成された注釈処理環境など、モジュールに環境が含まれていない場合に発生します。- 実装要件:
- このメソッドのデフォルトの実装では、空のセットが返されます。
- 戻り値:
- 既知のモジュール要素、またはモジュールがない場合は空のセット
- 導入されたバージョン:
- 9
- 関連項目:
-
getElementValuesWithDefaults
Map<? extends ExecutableElement,? extends AnnotationValue> getElementValuesWithDefaults(AnnotationMirror a) デフォルトを含む注釈の要素の値を返します。- パラメータ:
a
- 調べる対象の注釈- 戻り値:
- 注釈要素の値(デフォルトを含む)
- 関連項目:
-
getDocComment
要素のドキュメンテーション("Javadoc")コメントのテキストを返します。要素のドキュメンテーション・コメントは、空白を無視して、"
/**
"で始まり、別の"*/
"で終わり、要素の直前にあるコメントです。 したがって、ドキュメンテーション・コメントには、少なくとも3つの "*
"文字が含まれます。 ドキュメンテーション・コメントで返されるテキストは、ソース・コードに表示されたとおりに処理された形式のコメントです。 先頭の「/**
」と末尾の「*/
」は削除されます。 コメントの行が最初の"/**
"のあとに始まる場合、先行する空白文字は破棄されます。連続した"*
"文字が空白のあとに現れる場合や、これらの文字から行が始まるも場合も、同様に破棄されます。 その後、処理された行は連結され(改行文字を含む)、返されます。- パラメータ:
e
- 調べる対象の要素- 戻り値:
- 要素のドキュメンテーション・コメント。存在しない場合は
null
- Java言語仕様を参照してください:
-
3.6 空白
-
isDeprecated
boolean isDeprecated(Element e) 要素が非推奨の場合はtrue
、それ以外の場合はfalse
を返します。- パラメータ:
e
- 調べる対象の要素- 戻り値:
- 要素が非推奨の場合は
true
、それ以外の場合はfalse
-
getOrigin
default Elements.Origin getOrigin(Element e) 指定された要素のoriginを返します。このメソッドが
EXPLICIT
を返し、その要素がクラス・ファイルから作成された場合、その要素は実際にはソース・コードの明示的に宣言された構文に対応していない可能性があることに注意してください。 これは、ソース・コードから情報を保持する際のクラス・ファイル形式の忠実性の限界に起因します。 例えば、クラス・ファイル形式の少なくともいくつかのバージョンは、コンストラクタがプログラマによって明示的に宣言されたか、暗黙的に「デフォルト・コンストラクタ」として宣言されたかを保持しません。- 実装要件:
- このメソッドのデフォルト実装では、
EXPLICIT
が返されます。 - パラメータ:
e
- 調べる対象の要素- 戻り値:
- 指定された要素のorigin
- 導入されたバージョン:
- 9
-
getOrigin
default Elements.Origin getOrigin(AnnotatedConstruct c, AnnotationMirror a) 指定された注釈ミラーのoriginを返します。 注釈ミラーは、繰返し可能な注釈インタフェースの繰返し注釈を保持するために使用される、暗黙的に宣言された「コンテナ注釈」である場合、mandatedです。このメソッドが
EXPLICIT
を返し、クラス・ファイルから注釈ミラーを作成した場合、その要素は実際にはソース・コードの明示的に宣言された構文に対応していない可能性があることに注意してください。 これは、ソース・コードから情報を保持する際のクラス・ファイル形式の忠実性の限界に起因します。 例えば、クラス・ファイル形式の少なくともいくつかのバージョンは、注釈がプログラマによって明示的に宣言されたのか、暗黙的に「コンテナ注釈」として宣言されたのかを保持しません。- 実装要件:
- このメソッドのデフォルト実装では、
EXPLICIT
が返されます。 - パラメータ:
c
- 注釈ミラーが変更する構成a
- 検査されている注釈ミラー- 戻り値:
- 指定された注釈ミラーのorigin
- Java言語仕様を参照してください:
-
「9.6.3 繰返し可能な注釈インタフェース」
「9.7.5 同じインタフェースの複数の注釈」 - 導入されたバージョン:
- 9
-
getOrigin
default Elements.Origin getOrigin(ModuleElement m, ModuleElement.Directive directive) 与えられたモジュール・ディレクティブのoriginを返します。このメソッドが
EXPLICIT
を返し、moduleディレクティブがクラス・ファイルから作成された場合、モジュール・ディレクティブは実際にはソース・コード内の明示的に宣言された構造体に対応しないことに注意してください。 これは、ソース・コードから情報を保持する際のクラス・ファイル形式の忠実性の限界に起因します。 例えば、クラス・ファイル形式の少なくともいくつかのバージョンは、uses
ディレクティブがプログラマによって明示的に宣言されたのか、合成構文として追加されたのかを保持しません。ソース・ファイルからの情報を保存する際のクラス・ファイル形式の忠実性の限界のために、ディレクティブがクラス・ファイルから作成された場合、実装はディレクティブの起点ステータスを確実に判断できないことに注意してください。
- 実装要件:
- このメソッドのデフォルト実装では、
EXPLICIT
が返されます。 - パラメータ:
m
- ディレクティブのモジュールdirective
- モジュール・ディレクティブが調べられている- 戻り値:
- 指定されたモジュール・ディレクティブのorigin
- 導入されたバージョン:
- 9
-
isBridge
default boolean isBridge(ExecutableElement e) 実行可能要素がブリッジ・メソッドであればtrue
を、そうでなければfalse
を返します。- 実装要件:
- このメソッドのデフォルト実装は
false
を返します。 - パラメータ:
e
- 実行可能ファイルが検査されている- 戻り値:
- 実行可能要素がブリッジ・メソッドであれば
true
、そうでなければfalse
- 導入されたバージョン:
- 9
-
getBinaryName
Name getBinaryName(TypeElement type) 型要素のバイナリ名を返します。- パラメータ:
type
- 調べる対象の型要素- 戻り値:
- 型要素の「バイナリ名」
- Java言語仕様を参照してください:
-
13.1 バイナリの形式
- 関連項目:
-
getPackageOf
PackageElement getPackageOf(Element e) 要素のパッケージを返します。 パッケージのパッケージはそれ自身です。 モジュールのパッケージはnull
です。 トップレベルのクラスまたはインタフェースのパッケージは、その「囲みパッケージ」です。 そうでない場合、要素のパッケージは「囲み要素」のパッケージと同じです。- パラメータ:
e
- 調べる対象の要素- 戻り値:
- 要素のパッケージ
-
getModuleOf
default ModuleElement getModuleOf(Element e) 要素のモジュールを返します。 モジュールのモジュールはそれ自身です。 パッケージに「囲み要素」としてモジュールがある場合、そのモジュールはパッケージのモジュールです。 パッケージの囲み要素がnull
の場合、パッケージ・モジュールに対してnull
が戻されます。 (パッケージにnull
モジュールが含まれている場合の1つは、環境にモジュールが含まれていない場合です。このようなモジュールは、モジュールを含まない「ソース・バージョン」用に構成されている注釈処理環境などです。) それ以外の場合、要素のモジュールは要素のモジュール「パッケージ」と等しくなります。- 実装要件:
- このメソッドのデフォルト実装は
null
を返します。 - パラメータ:
e
- 調べる対象の要素- 戻り値:
- 要素のモジュール
- 導入されたバージョン:
- 9
-
getAllMembers
List<? extends Element> getAllMembers(TypeElement type) 継承されているか直接宣言されているかにかかわらず、型要素のすべてのメンバーを返します。 クラスについては、結果にはコンストラクタも含まれますが、ローカル・クラスや匿名クラスは含まれません。- APIのノート:
- 特定の種類の要素は、
ElementFilter
のメソッドを使用して分離できます。 - パラメータ:
type
- 調べる対象の型- 戻り値:
- 型のすべてのメンバー
- 関連項目:
-
getOutermostTypeElement
default TypeElement getOutermostTypeElement(Element e) このような包含要素が存在する場合、要素が含まれる最も外側の型要素を返します。それ以外の場合は、null
を返します。 「モジュール」およびpackagesには含まれるタイプ要素がないため、これらの種類の要素に対してnull
が返されます。 top-levelクラスまたはインタフェースは、最も外側の型要素です。- 実装要件:
- このメソッドのデフォルトの実装では、まず引数の種類をチェックします。
PACKAGE
、MODULE
およびOTHER
などの要素の場合は、null
が返されます。 他の種類の要素については、その要素がトップレベルのクラスかインタフェースかを調べます。 その場合、その要素が返されます。それ以外の場合は、トップレベルのクラスまたはインタフェースが見つかるまで、「囲み要素」チェーンが続きます。 最終的な最上位クラスまたはインタフェースの要素が返されます。 - パラメータ:
e
- 調べる対象の要素- 戻り値:
- このような包含要素が存在する場合、要素が含まれる最も外側の型要素。それ以外の場合は、
null
を返します - 導入されたバージョン:
- 18
- 関連項目:
-
getAllAnnotationMirrors
List<? extends AnnotationMirror> getAllAnnotationMirrors(Element e) 直接存在しているか継承を介して存在しているかにかかわらず、要素に存在しているすべての注釈を返します。このメソッドによって返される注釈は宣言注釈であることに注意してください。
- パラメータ:
e
- 調べる対象の要素- 戻り値:
- 要素のすべての注釈
- 関連項目:
-
hides
型、メソッド、またはフィールドが別のものを覆い隠しているかどうかをテストします。- パラメータ:
hider
- 先頭の要素hidden
- 2番目の要素- 戻り値:
- 先頭の要素が2番目の要素を覆い隠している場合に限り
true
- Java言語仕様を参照してください:
-
8.4.8 継承、オーバーライドおよび非表示
-
overrides
boolean overrides(ExecutableElement overrider, ExecutableElement overridden, TypeElement type) あるメソッドが指定されたクラスまたはインタフェースのメンバーとして、別のメソッドをオーバーライドするかどうかをテストします。 非抽象メソッドが抽象メソッドをオーバーライドする場合は、前者が後者を実装するとも言われます。 JLS 8.4.8.1で示されているように、メソッドはそれ自体をオーバーライドしません。 オーバーライド関係は「再帰的」です。もっとも単純で一般的な使用法では、
type
パラメータの値は、メソッドをオーバーライドする可能性のあるoverrider
を直接囲むクラスまたはインタフェースになります。 たとえば、m1
がメソッドString.hashCode
を表し、m2
がメソッドObject.hashCode
を表すとします。String
クラス内でm1
がm2
をオーバーライドするかどうかを次のように調べることができます。実際はオーバーライドします。assert elements.overrides(m1, m2, elements.getTypeElement("java.lang.String"));
A
のメソッドがインタフェースB
の同様の名前のメソッドをオーバーライドしない次の例で示すことができます:class A { public void m() {} }
interface B { void m(); }
...
m1 = ...; // A.m
m2 = ...; // B.m
assert ! elements.overrides(m1, m2, elements.getTypeElement("A"));
C
のメンバーとして表示される場合、A
のメソッドはB
のメソッドをオーバーライドします:class C extends A implements B {}
...
assert elements.overrides(m1, m2, elements.getTypeElement("C"));
- パラメータ:
overrider
- オーバーライドを行う可能性がある先頭のメソッドoverridden
- オーバーライドされる可能性がある2番目のメソッドtype
- 最初のメソッドがメンバーであるクラスまたはインタフェース- 戻り値:
- 先頭のメソッドが2番目のメソッドをオーバーライドする場合に限り
true
- Java言語仕様を参照してください:
-
8.4.8 継承、オーバーライドおよび非表示
9.4.1継承およびオーバーライド
-
getConstantExpression
プリミティブ値または文字列を表す定数式のテキストを返します。 テキストは、ソース・コードで値を表すのに適した形式で返されます。- パラメータ:
value
- プリミティブ値または文字列- 戻り値:
- 定数式のテキスト
- 例外:
IllegalArgumentException
- 引数がプリミティブ値または文字列ではない場合- 関連項目:
-
printElements
要素の表現を、指定された順序で、指定されたライターに出力します。 このメソッドは、主に診断のために使用されます。 出力の厳密な形式は指定されておらず、変更される予定があります。- パラメータ:
w
- 出力先のライターelements
- 出力する要素
-
getName
Name getName(CharSequence cs) 引数と同じ文字シーケンスを持つ名前を返します。- パラメータ:
cs
- 名前として返される文字シーケンス- 戻り値:
- 引数と同じ文字シーケンスを持つ名前
-
isFunctionalInterface
boolean isFunctionalInterface(TypeElement type) この型要素が関数型インタフェースである場合はtrue
を返し、そうでない場合はfalse
を返します。- パラメータ:
type
- 調べる対象の型要素- 戻り値:
- type要素が関数型インタフェースの場合は
true
、それ以外の場合はfalse
- Java言語仕様を参照してください:
-
9.8 関数型インタフェース
- 導入されたバージョン:
- 1.8
-
isAutomaticModule
default boolean isAutomaticModule(ModuleElement module) モジュール要素が自動モジュールの場合はtrue
、そうでない場合はfalse
を返します。- 実装要件:
- このメソッドのデフォルト実装は
false
を返します。 - パラメータ:
module
- 検査するモジュール要素- 戻り値:
- モジュール要素が自動モジュールの場合は
true
、それ以外の場合はfalse
- Java言語仕様を参照してください:
-
7.7.1 依存性
- 導入されたバージョン:
- 17
-
recordComponentFor
default RecordComponentElement recordComponentFor(ExecutableElement accessor) 指定されたアクセッサのレコード・コンポーネントを返します。 指定されたメソッドがレコード・コンポーネント・アクセッサでない場合、null
を返します。- 実装要件:
- このメソッドのデフォルト実装では、アクセッサを含む要素に
RECORD
型が含まれているかどうかを調べます(この場合、アクセッサを囲む要素のすべてのレコード・コンポーネントはElementFilter.recordComponentsIn(Iterable)
を呼び出すことで取得されます)。 取得されたレコード・コンポーネントの1つ以上のアクセッサが、このメソッドへパラメータとして渡されたアクセッサと等しい場合、その他のケースのnull
では、そのレコード・コンポーネントが返されます。 - パラメータ:
accessor
- レコード・コンポーネントの検索メソッド。- 戻り値:
- レコード・コンポーネント、または指定されたメソッドがレコード・コンポーネント・アクセサではない場合は
null
- 導入されたバージョン:
- 16
-
isCanonicalConstructor
default boolean isCanonicalConstructor(ExecutableElement e) 実行可能要素がレコードの正規コンストラクタであると判断できる場合はtrue
を返し、それ以外の場合はfalse
を返します。 実行可能要素がクラス・ファイルによって構築される場合など、コンストラクタが正規コンストラクタであるかどうかを判断するための情報が不十分な場合があることに注意してください。 このような場合、false
が返されます。- 実装要件:
- このメソッドのデフォルトの実装では、無条件に
false
が返されます。 - パラメータ:
e
- 実行可能ファイルが検査されている- 戻り値:
- 実行可能要素がレコードの正規コンストラクタであると判断できる場合は
true
、それ以外の場合はfalse
- Java言語仕様を参照してください:
-
「8.10.4.1 標準正規の標準コンストラクタ」
- 導入されたバージョン:
- 20
-
isCompactConstructor
default boolean isCompactConstructor(ExecutableElement e) 実行可能要素がレコードのコンパクト・コンストラクタであると判断できる場合はtrue
を返し、それ以外の場合はfalse
を返します。 コンパクト・コンストラクタも「正規コンストラクタ」です。 場合によっては、実行可能要素がクラス・ファイルによって構築される場合など、コンストラクタがコンパクトなコンストラクタであるかどうかを判断するための十分な情報がないことがあります。 このような場合、false
が返されます。- 実装要件:
- このメソッドのデフォルトの実装では、無条件に
false
が返されます。 - パラメータ:
e
- 実行可能ファイルが検査されている- 戻り値:
- 実行可能要素がレコードのコンパクト・コンストラクタであると判断できる場合は
true
、それ以外の場合はfalse
- Java言語仕様を参照してください:
-
「8.10.4.2 コンパクトな正規コンストラクタ」
- 導入されたバージョン:
- 20
-
getFileObjectOf
default JavaFileObject getFileObjectOf(Element e) この要素のファイル・オブジェクトを返すか、そのようなファイル・オブジェクトがない場合はnull
を返します。返されるファイル・オブジェクトは、要素の構成に使用される情報の「参照表現」用です。 たとえば、コンパイルまたは注釈の処理中に、クラス
Foo
のソース・ファイルがクラス・ファイルにコンパイルされると、Foo
を表す要素に対して返されるファイル・オブジェクトは、クラス・ファイルではなくソース・ファイル用になります。実装では、このメソッドの機能をサポートしないことを選択できます。この場合、
UnsupportedOperationException
がスローされます。注釈処理のコンテキストでは、要素が初期入力の一部として含まれていた場合、または注釈処理ツールの実行中に含まれているファイルが作成された場合、
null
以外の値が返されます。 それ以外の場合は、null
が返されます。 注釈処理で、「クラス・ファイルが作成されます」の場合、そのクラス・ファイルは要素の参照表現として機能します。ファイル・オブジェクトがある場合、パッケージのファイル・オブジェクトは
package-info
ファイルになります。 パッケージが存在し、パッケージ内のソース・ファイルまたはクラス・ファイルの作成から注釈処理の実行中にパッケージが(暗黙的)が作成された場合でも、package-info
ファイルがない場合があります。 「名前のないパッケージ」はコンパイル・ユニットで宣言できないため、null
ファイルを持ちます。ファイル・オブジェクトがある場合、モジュールのファイル・オブジェクトは
module-info
ファイルになります。 「名前のないモジュール」はコンパイル・ユニットで宣言できないため、null
ファイルを持ちます。 「自動モジュール」は暗黙的に宣言されるため、null
ファイルを持ちます。ファイル・オブジェクトがある場合、最上位の
public
クラスまたはインタフェースのファイル・オブジェクトは、そのクラスまたはインタフェースに対応するソースまたはクラス・ファイルになります。 この場合、通常、ファイル名の先頭部分がクラスまたはインタフェースの名前と一致します。 単一のコンパイル・ユニットは、ファイル名に対応するプライマリpublic
クラスや、ファイル名に対応する1つ以上の「補助動詞」クラスまたは名前がファイル名に対応しないインタフェースなど、複数のトップレベル・クラスおよびインタフェースを定義できます。 ソース・ファイルが補助クラスまたはインタフェースの参照表現を提供している場合、プライマリ・クラスのファイルが返されます。 (補助クラスまたはインタフェースは、package-info
ソース・ファイルでも定義できます。この場合、package-info
ファイルのファイルが返されます。) クラス・ファイルが補助クラスまたはインタフェースの参照表現を提供している場合、補助クラスの個別のクラス・ファイルが返されます。ネストされたクラスまたはインタフェースの場合は、ファイル・オブジェクトがある場合:
- ソース・ファイルが参照表現を提供している場合、ファイル・オブジェクトは「最も外側の囲み」クラスまたはインタフェースのオブジェクトになります
- クラス・ファイルが参照表現を提供している場合、ファイル・オブジェクトはネストされたクラスまたはインタフェースそのものになります
「変数」、「メソッドおよびコンストラクタ」など、他の語句で囲まれた要素の場合、ファイル・オブジェクトには、字句で囲まれた要素の「囲み要素」に関連付けられたオブジェクトが含まれます。
- 実装要件:
- デフォルトの実装では、
UnsupportedOperationException
が無条件にスローされます。 - パラメータ:
e
- ファイル・オブジェクトを検索する要素- 戻り値:
- この要素のファイル・オブジェクト、またはそのようなファイル・オブジェクトがない場合は
null
- 例外:
UnsupportedOperationException
- この機能がサポートされていない場合- 導入されたバージョン:
- 18
-