首頁  >  文章  >  Java  >  您可以從 Java 中的不同類別存取註解值嗎?

您可以從 Java 中的不同類別存取註解值嗎?

Linda Hamilton
Linda Hamilton原創
2024-10-26 10:11:02266瀏覽

Can You Access Annotation Values from a Different Class in Java?

從外部存取註解值

在 Java 中,是否可以在另一個類別中檢索一個類別中定義的註解值?

例如,考慮以下註解及其對應的存取器方法:

<br>@Column(columnName="firstname")<br>private String firstName; <p>@Column(columnName= "lastname")<br>private String lastName;</p><p>public String getFirstName() {<br> return firstName;<br>}</p>}<oid> return firstName;<p>}<br>}<oid> (String firstName) {<br> this.firstName = firstName;</oid></p>}<p><br>public String getLastName() {<br> return lastName;</p>}<p><br> String lastName) {<br> this .lastName = lastName;<br>}</p></oid>

是否可以從單獨的類別中決定@Column 註解的「columnName」值?

是,如果 @Column 註解使用 @Retention(RetentionPolicy.RUNTIME) 指定執行時保留,則這是可能的。操作方法如下:
<code class="java">for (Field f: MyClass.class.getFields()) {
   Column column = f.getAnnotation(Column.class);
   if (column != null)
       System.out.println(column.columnName());
}</code>

請注意,MyClass.class.getFields() 僅會擷取公用欄位。若要存取私有字段,請使用 MyClass.class.getDeclaredFields()。

以上是您可以從 Java 中的不同類別存取註解值嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn