其他分享
首页 > 其他分享> > 注解入门

注解入门

作者:互联网

1. 注解:Anotation

在这里插入图片描述
这就是我们最常见的注解之一,表示一个方法打算重写父类的一个方法。


2. 常见内置注解

  1. Override重写注解:表示方法声明旨在覆盖超类型中的方法声明。 如果使用此注释类型注释方法,则除非至少满足以下条件之一:1. 该方法将覆盖或实现在超类型中声明的方法;2. 该方法具有与Object中声明的任何公共方法的覆盖相同的签名 。;否则需要编译器生成错误消息。

    @Target(ElementType.METHOD)				//只能用来修饰方法
    @Retention(RetentionPolicy.SOURCE)
    public @interface Override {
    }
    
    

    在这里插入图片描述

  2. Deprecated废弃注解:不推荐程序员使用或者存在更好的替代方式;使用Deprecated修饰的元素编译运行时编译器会报出警告。例如:Thread类下的stop方法、suspend方法、resume方法;Date类下的getYear方法、getMonth方法…Deprecated修饰的元素都会有一个中划线在上面。

    @Documented
    @Retention(RetentionPolicy.RUNTIME)				
    @Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
    //可以用来修饰构造器、字段、局部变量...
    public @interface Deprecated {
    }
    
    

    在这里插入图片描述

  3. SuppressWarnings压制警告注解:用来抑制编译时的警告信息,如果你想用编译运行时存在警告的元素时,但是又不想看到警告信息(和乱码兄弟一样看多了难受,总觉得自己的东西有问题)这时可以使用镇压警告注解。它与上面两个注解不一样,它需要传入一些已经定义好的参数才能正确使用。

    @Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
    @Retention(RetentionPolicy.SOURCE)
    public @interface SuppressWarnings {
        
        String[] value();			//参数:压制警告的类型
    }
    
    1. @SuppressWarnings("unchecked")      //忽略所有的未检查警告信息
    2. @SuppressWarnings("deprecated")     //忽略所有的过时元素的警告信息
    3. @SuppressWarnings(value = {"deprecated","unchecked"})           //压制警告和未检查信息
    4. @SuppressWarnings("all")            //压制所有的警告信息
    注意当压制多个警告时请将他们以第三种value数组的形式写入,否则编译器爆红。
    

    在这里插入图片描述
    压制警告信息的名称并不是Java规范的强制要求,这些是编译器/IDE厂商自己定的。编译器厂商需要自行协商保证同名的警告类型在不同编译器上也能正常运行。而且不同版本的警告信息同样存在不同。在JDK的bin目录下启动cmd输出:javac -X可以看到当前版本所支持的所有警告信息名称。
    在这里插入图片描述

标签:入门,SuppressWarnings,信息,编译器,注解,警告,方法
来源: https://blog.csdn.net/weixin_43808717/article/details/115538019