Accès aux valeurs d'annotation en Java
Les annotations Java fournissent un mécanisme permettant d'ajouter des métadonnées aux éléments de code, tels que des classes, des méthodes et des champs. Par défaut, les annotations ne sont disponibles que lors de la compilation et sont supprimées au moment de l'exécution. Cependant, en spécifiant la valeur RetentionPolicy.RUNTIME dans l'annotation Retention, vous pouvez conserver les annotations au moment de l'exécution.
Accéder aux valeurs d'annotation d'une autre classe
Si une annotation a la RetentionPolicy.RUNTIME, vous pouvez utiliser la réflexion Java pour lire sa valeur à partir d'une autre classe. Voici comment :
<code class="java">// Import the necessary classes import java.lang.reflect.Field; import java.lang.annotation.Annotation; // Get the class object Class<?> clazz = MyClass.class; // Iterate over the fields of the class for (Field field : clazz.getFields()) { // Check if the field has the Column annotation Annotation annotation = field.getAnnotation(Column.class); // If the annotation exists, read its columnName() value if (annotation != null) { String columnName = ((Column) annotation).columnName(); System.out.println("Column Name: " + columnName); } }</code>
Accès aux champs privés
La méthode getFields() récupère uniquement les champs publics. Pour accéder aux champs privés, utilisez plutôt getDeclaredFields() :
<code class="java">for (Field field : clazz.getDeclaredFields()) { ... }</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!