1. 説明
(1) リフレクションは、親クラスのすべてのフィールドを含む、Java クラスのすべてのフィールドを取得します。クラス自体のフィールドはメソッドを通じて直接渡すことができます;
(2) リフレクションはフィールドの読み取りと書き込みができ、setX メソッドと getX メソッドを使用してフィールドの読み取りと書き込みを行うことができますが、読み取りと書き込みの前後の型が一致します。一致しない場合は、例外が報告されます。
#2. 例
private static int a = 1; public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException { Class c = Main.class; Field field = c.getDeclaredField("a"); int b = field.getInt(Main.class); System.out.println(b); field.setInt(Main.class, 2); System.out.println(a); field.setFloat(Main.class, (float) 1.1); // 报异常 }
以上がJava リフレクションを使用してフィールドを読み書きするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。