zoukankan      html  css  js  c++  java
  • 自定义注解

    它类似于新创建一个接口文件,但为了区分,我们需要将它声明为@interface,如下例:

    public @interface NewAnnotation {
    
    }
    
    使用自定义的注解类型
    
     
    
    public class AnnotationTest {
    
        @NewAnnotation
    
        public static void main(String[]args) {
    
        }
    
    }
    
    为自定义注解添加变量
    
    public @interface NewAnnotation {
    
        String value();
    
    }
    
     
    
    public class AnnotationTest {
    
        @NewAnnotation("mainmethod")
    
        public static void main(String[]args) {
    
            saying();
    
        }    
    
        @NewAnnotation(value="saymethod")
    
        public static void saying() {
    
        }
    
    }
    
    定义一个枚举类型,然后将参数设置为该枚举类型,并赋予默认值
    
       public @interface Greeting {
    
        public enum FontColor {
    
            BLUE,
    
            RED,
    
            GREEN
    
        };
    
        String name();
    
        FontColor fontColor() default FontColor.RED;
    
    }
    
    这里有两种选择,其实变数也就是在赋予默认值的参数上,我们可以选择使用该默认值,也可以重新设置一个值来替换默认值
    
    public class AnnotationTest {
    
        @NewAnnotation("mainmethod")
    
        public static void main(String[]args) {
    
            saying();
    
            sayHelloWithDefaultFontColor();
    
            sayHelloWithRedFontColor();
    
        } 
    
        @NewAnnotation("saymethod")
    
        public static void saying() {
    
        }    
    
        // 此时的fontColor为默认的RED
    
        @Greeting(name="defaultfontcolor")
    
        public static void sayHelloWithDefaultFontColor() {
    
        }
    
        // 将fontColor改为BLUE
    
        @Greeting(name="notdefault", fontColor=Greeting.FontColor.BLUE)
    
        public static void sayHelloWithRedFontColor() {
    
        }
    
    }
    
     
    
  • 相关阅读:
    在vue中格式化表格中的时间为指定格式
    vlookup匹配数据
    .net core 导出文件到浏览器
    SQL语句 不足位数补0
    获取两个月份间的所有月份列表
    WIN10安装MYSQL教程
    在IDEA中使用@Slf4j报错,找不到log报错
    mybatis plus 动态表名 SQL 解析【我】
    Linux下搭建FTP服务器的方法
    关于行结束符(CR、LF)
  • 原文地址:https://www.cnblogs.com/loaderman/p/6407599.html
Copyright © 2011-2022 走看看