在 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><p>public void setFirstName(String firstName) {<br> this.firstName = firstName;<br>}</p><p>public String getLastName() {<br> return lastName;<br>}</p><p>public void setLastName(String lastName) {<br> this .lastName = lastName;<br>}<br>
是否可以从单独的类中确定 @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中文网其他相关文章!