User Tools

Site Tools


ja:tutorial:reflection

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
ja:tutorial:reflection [2022/08/13 09:56] – [Records] 翻訳の修正 skytomoja:tutorial:reflection [2022/08/13 09:57] (current) – [Records] (英語)を追加 skytomo
Line 41: Line 41:
 その結果、リフレクションを持つバニラクラスのレコードコンポーネントを見つけることができません。 その結果、リフレクションを持つバニラクラスのレコードコンポーネントを見つけることができません。
  
-[[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html#isRecord()|isRecord()]] および [[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html#getRecordComponents()|getRecordComponents()]] については、JDK 17 API ドキュメントを参照してください。+[[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html#isRecord()|isRecord()]] および [[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html#getRecordComponents()|getRecordComponents()]] については、JDK 17 API ドキュメント(英語)を参照してください。
  
 さらに、proguard は、(メソッドからではなく)レコードクラスから(一般的な情報を示す)シグネチャも削除します。 Yarn のマッピングは、これらのクラスのシグネチャマッピングを定義します。 これは、[[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html#getTypeParameters()|recordClass.getTypeParameters()]] などの一部のリフレクションメソッドへの呼び出しでのリフレクション結果に影響し、レコードに存在しない型パラメーターを参照するメソッドで[[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/reflect/Method.html#getGenericReturnType()|getGenericReturnType()]] を呼び出すと、MalformedParameterizedTypeException が発生する場合があります。 さらに、proguard は、(メソッドからではなく)レコードクラスから(一般的な情報を示す)シグネチャも削除します。 Yarn のマッピングは、これらのクラスのシグネチャマッピングを定義します。 これは、[[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html#getTypeParameters()|recordClass.getTypeParameters()]] などの一部のリフレクションメソッドへの呼び出しでのリフレクション結果に影響し、レコードに存在しない型パラメーターを参照するメソッドで[[https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/reflect/Method.html#getGenericReturnType()|getGenericReturnType()]] を呼び出すと、MalformedParameterizedTypeException が発生する場合があります。
  
ja/tutorial/reflection.txt · Last modified: 2022/08/13 09:57 by skytomo