ホームページ  >  記事  >  Java  >  Java リフレクションを使用してフィールドを読み書きするにはどうすればよいですか?

Java リフレクションを使用してフィールドを読み書きするにはどうすればよいですか?

王林
王林転載
2023-04-25 17:25:07608ブラウズ

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 の基本データ型とは

Java の基本データ型は次のように分類されます:

1. 整数型。整数のデータ型を表すために使用されます。

2. 浮動小数点型、小数を表すために使用されるデータ型。

3. 文字型. 文字型のキーワードは「char」です。

4. ブール型は論理値を表す基本的なデータ型です。

以上がJava リフレクションを使用してフィールドを読み書きするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。