Annotation personnalisée java: rendre un atsortingbut facultatif

J’ai défini ma propre annotation personnalisée

@Target(value={ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) public @interface MyCustomAnnotation { Class myType(); } 

Comment puis-je rendre l’atsortingbut facultatif?

Vous pouvez fournir une valeur par défaut pour l’atsortingbut:

 @Target(value={ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) public @interface MyCustomAnnotation { Class myType() default Object.class; } 

Trouvé Cela ne peut pas être optionnel, mais un défaut peut être déclaré comme ceci:

 @Target(value={ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) public @interface MyCustomAnnotation { Class myType() default Ssortingng.class; } 

Si aucune valeur par défaut ne peut être considérée comme une valeur “vide”, cela pose un problème.

Pour l’atsortingbut facultatif, vous devez fournir une valeur par défaut pour cet atsortingbut. Vous pouvez fournir une valeur par défaut à l’aide du mot clé “default”.

Remarque: pour un seul atsortingbut, vous pouvez utiliser le nom d’atsortingbut comme valeur . Si vous utilisez le nom de votre atsortingbut comme valeur, vous pouvez transmettre directement une valeur telle que @MyCustomAnnotation (true) au lieu de @MyCustomAnnotation (myType = true).

Voir cet exemple pour plus de détails