Rumah Java javaTutorial Bagaimana untuk Mendapatkan Nilai daripada Anotasi dalam Kelas Java?

Bagaimana untuk Mendapatkan Nilai daripada Anotasi dalam Kelas Java?

Oct 27, 2024 am 01:04 AM

How to Retrieve Values from Annotations in Java Classes?

Mendapatkan Nilai Medan Anotasi dalam Kelas Java

Dalam pengaturcaraan Java, anotasi ialah metadata yang dilampirkan pada kelas, kaedah atau medan. Anotasi ini boleh memberikan maklumat tambahan tentang struktur atau gelagat kod. Walaupun anotasi ini biasanya digunakan untuk mencetuskan kefungsian tertentu atau memberikan petunjuk kepada alat penyusunan, mungkin terdapat keadaan di mana anda perlu membaca nilai yang disimpan dalam anotasi ini. Artikel ini menunjukkan cara untuk mencapai matlamat ini.

Pertimbangkan contoh berikut:

<code class="java">@Column(columnName="firstname")
private String firstName;

@Column(columnName="lastname")
private String lastName;</code>
Salin selepas log masuk

Dalam kod ini, anotasi @Column digunakan untuk menentukan nama lajur yang dikaitkan dengan medan yang sepadan. Sekarang, mari kita mendalami soalan yang dibangkitkan:

Bolehkah anda membaca nilai anotasi @Column dalam kelas lain?

Jawapannya afirmatif. Walau bagaimanapun, fungsi ini bergantung pada dasar pengekalan anotasi. Anotasi @Column mesti menyatakan RetentionPolicy.RUNTIME untuk membolehkan akses kepada nilainya melebihi masa penyusunan. Ubah suai anotasi @Column seperti berikut:

<code class="java">@Retention(RetentionPolicy.RUNTIME)
@interface Column {
    String columnName();
}</code>
Salin selepas log masuk

Dengan dasar pengekalan masa jalan yang ditetapkan, anda boleh mendapatkan semula nilai anotasi menggunakan refleksi. Berikut ialah contoh:

<code class="java">for (Field f : MyClass.class.getFields()) {
   Column column = f.getAnnotation(Column.class);
   if (column != null)
       System.out.println(column.columnName());
}</code>
Salin selepas log masuk

Dengan mengulangi medan kelas MyClass dan memeriksa setiap anotasi medan, anda boleh mengekstrak nilai anotasi @Column.

Nota: Jika medan anda diisytiharkan peribadi, gunakan getDeclaredFields() dan bukannya getFields().

Kaedah ini menyediakan cara untuk mengakses dan memproses maklumat yang terkandung dalam anotasi, memperluaskan fleksibiliti dan kebolehlanjutan kod anda.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai daripada Anotasi dalam Kelas Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)