Kotlinでは、メソッド参照の結果はパッケージkotlin.reflectに配置されます。 Javaのメソッド参照もリフレクションAPIの一部ですか?JavaメソッドのリファレンスはリフレクションAPIの一部です
答えて
メソッド参照の機能インタフェースを実装する実際の型は、意図的に指定されていません。重要なのは、それが現在のJREによって提供されることだけです。
実際には、HotSpot/OpenJDKの場合、メソッド参照を含むクラスと同じパッケージおよびクラスローディングコンテキスト内に存在するランタイム生成クラスです。特殊クラスを継承せず、ターゲットタイプで定義されたインタフェース以外のインタフェースも実装しません。したがって、このクラスにはいくつかの特別なプロパティがあります。つまり、名前で検索することはできません。定義するクラスローダーの到達可能性に関係なくガベージコレクションが行われますが、Reflection APIの一部ではありません。次のようにメソッドの参照用に作成されたインスタンスの
特性がthe Java Language Specificationによって指定され:
方法参照式の値は、以下の特性を持つクラスのインスタンスへの参照である。
- このクラスは、対象となる機能インターフェイスタイプを実装し、ターゲットタイプが交差タイプであれば、交差点に記載されている他のすべてのインターフェイスタイプを実装します。
方法基準発現はそれぞれ非static
部材方法U
のm
ため、U
を入力した:
U
の関数型はm
の署名のサブシグニチャを有する場合、そのクラスは、呼び出しを宣言メソッドは、
m
をオーバーライドします。呼び出しメソッドの本体は、以下で説明するように、参照されたメソッドを呼び出すか、クラスインスタンスを作成するか、配列を作成します。呼び出しメソッドの結果がvoid
でない場合、本文は、メソッド呼び出しまたはオブジェクト作成の結果を、必要な割り当て変換(5.2節)の後に返します。オーバーライドされるメソッドの型の消去が、その関数の型が
U
の消去と異なる場合、メソッドの呼び出しまたはオブジェクトの作成の前に、呼び出しメソッドの本体が各引数の値がインスタンスであることを確認しますファンクションタイプU
の対応するパラメータタイプの消去のサブクラスまたはサブインターフェースのサブタイプ。そうでない場合はClassCastException
がスローされます。- クラスは、上記の関数型または他のインタフェース型の他のメソッドをオーバーライドしませんが、
Object
クラスのメソッドをオーバーライドすることができます。
- 1. 私はJavaのリフレクションAPI
- 2. JavaリフレクションAPI:パラメータ
- 3. コンストラクタメソッドの取得方法Javaでリフレクションを使用するリファレンス
- 4. は、Javaのリフレクション
- 5. Javaでのリフレクション
- 6. パンダタイムスタンプのコンポーネント - 一部はプロパティであり、一部はメソッドです。
- 7. Javaバイトコード操作とJavaリフレクションAPI?
- 8. JavaリフレクションでのScalaリフレクションの使用
- 9. JCache API(JSR 107)はJava EEの一部ですか?
- 10. リフレクションがJavaのクラスまたはメソッドにアクセスする方法
- 11. Javaリフレクションは、他のメソッドのパラメータとしてメソッドに渡しますか?
- 12. addEventListenerメソッドはドキュメントオブジェクトの一部ですか?
- 13. Javaでリフレクションして内部クラスをインスタンス化する方法は?
- 14. アンドロイド:Javaのリフレクション
- 15. AndroidでのJavaのリフレクション:interfaces
- 16. APIリソースルートの一部のメソッドに認証を追加する
- 17. PHPリフレクションAPIで一貫性のない結果
- 18. Net-SNMP APIのリファレンス?
- 19. "this"リファレンスはJavaでnull null
- 20. bigquery.tabledata()。部分行のみを挿入するinsertAllメソッド(Bigquery Java API)
- 21. Javaメソッドはリフレクションのみで呼び出されます。注釈を付ける?
- 22. Javaのリフレクションとシングルトン
- 23. Javaのリフレクション出力
- 24. Javaのリフレクションとクラスローダー
- 25. リフレクションを使用して一部のプロパティを選択する
- 26. Java:機能インタフェースのリフレクションによるメソッドの呼び出し
- 27. JavaのリファレンスがOK
- 28. プログラミング - リフレクションAPI
- 29. スカラflatMapのgetConstructorsメソッド(リフレクション)
- 30. PHPUnit APIリファレンスはどこですか?