Analisis Ide:
Pertama, gunakan kelas untuk mendapatkan objek kelas yang mewakili kelas string, dan kemudian gunakan metode getDeclaredFields () dari kelas kelas untuk mendapatkan semua variabel anggota dan menetapkannya ke array tipe bidang, yaitu, semua bidang kelas string diperoleh.
Gunakan foreach () untuk mengulangi semua bidang, gunakan metode getName () dari kelas lapangan untuk mendapatkan nama variabel anggota. Kelas bidang untuk mendapatkan tipe int di objek yang ditentukan nilai variabel anggota ini.
Tangkap IllegalargumentException dan pengecualian IllegalAccessException pada gilirannya.
Kodenya adalah sebagai berikut:
Salinan kode adalah sebagai berikut:
impor java.lang.reflect.field;
Public Class ExceptionTest {
public static void main (string [] args) {
Kelas <?> Clazz = string.class; // Dapatkan objek kelas yang mewakili kelas string
Bidang [] bidang = clazz.getDeclaredFields ();
untuk (bidang bidang: bidang) {// Transfusikan semua bidang
System.out.println (bidang);
if (field.getName (). Equals ("hash")) {// Jika nama domain hash
mencoba {
System.out.println (field.getint ("hash"));
} catch (IllegalArgumentException e) {// Catch IllegalArgumentException Exception
System.out.println (e);
} catch (IllegalAccessException E) {// Tangkap Pengecualian IllegalAccessException
System.out.println (e);
}
}
}
}
}