美文网首页
JAVA之实例注解

JAVA之实例注解

作者: 每天进步一点点变成更好的自己 | 来源:发表于2022-06-20 12:05 被阅读0次

@Override注解:用来指定方法重写的,只能修饰且只能用于方法重写。
@Deprecated 注解: 可以用来注解类、接口、成员方法、成员变量等,用于表示某个元素(类、方法等)已过时。
@SupperessWarnings:抑制编译器警告,该注释指示被该注释修饰的程序元素(以及该程序元素中的所有子元素)取消显示指定的编译器警告,且会一直作用于该程序元素的所有子元素。
@SafeVarargs注解:适用于static或final声明的方法,对于未声明为static或final的方法,如果要抑制unchecked警告,可以使用@SuperessWarnings注解。
@Functionallntterface注解:用来指定某个接口必须是函数式接口,所以@FunInterface只能修饰接口,不能修饰其他程序元素。

1、 @Override注解

@Override注解是用来指定方法重写的,只能修饰且只能用于方法重写。
它可以强制一个子类必须重写父类方法或实现接口的方法。

public class Person {
    private String name = "";
    private int age;
    ...
    @Override  --写了该方法,会进行编译器检查方法,保证父类要包含一个被该方法重写的方法 ,否则会编译报错(t0String)
    public String t0String() { //toString()
        return "Person [name=" + name + ", age=" + age + "]";
    }
}

2、@Deprecated 注解

@Deprecated 注解 可以用来注解类、接口、成员方法、成员变量等,用于表示某个元素(类、方法等)已过时。

class Test {
    -- since属性指定从哪个版本开始被标记成过时,forRemoval指定该API将来会被删除
    @Deprecated(since = "9", forRemoval = true)
    public void print() {
        System.out.println("这里是C语言中文网Java教程!");
    }
}

public class DeprecatedTest {
    public static void main(String[] args) {
        --下面使用info()方法时将会被编译器警告
        new Test().print();
    }
}

3、@SupperessWarnings:抑制编译器警告

SuperessWarnings:抑制编译器警告,该注释指示被该注释修饰的程序元素(以及该程序元素中的所有子元素)取消显示指定的编译器警告,且会一直作用于该程序元素的所有子元素。

注解的使用有以下三种:

  • 1.抑制单类型的警告:@SuperessWarnings("unchecked")
  • 2.抑制多类型的警告:@SuperessWarnings("unchecked","rawtypes")
  • 3.抑制所有类型的警告:@SuperessWarnings("unchecked")

4、@SafeVarargs注解

@SafeVarargs注解适用于static或final声明的方法,对于未声明为static或final的方法,如果要抑制unchecked警告,可以使用@SuperessWarnings注解。

public class HelloWorld {
    public static void main(String[] args) {
        // 传递可变参数,参数是泛型集合
        display(10, 20, 30);
        // 传递可变参数,参数是非泛型集合
        display("10", 20, 30); // 没有@SafeVarargs会有编译警告
    }

    @SafeVarargs
    public static <T> void display(T... array) {
        for (T arg : array) {
            System.out.println(arg.getClass().getName() + ":" + arg);
        }
    }
}

5、@Functionallntterface注解

@Functionallntterface注解 就是用来指定某个接口必须是函数式接口,所以@FunInterface只能修饰接口,不能修饰其他程序元素。
函数式接口:如果接口中只有一个抽象方法(可以包含多个默认方法或多个static方法)

@FunctionalInterface
public interface FunInterface {
    static void print() {
        System.out.println("C语言中文网");
    }

    default void show() {
        System.out.println("我正在学习C语言中文网Java教程");
    }
--如果多定义了一个抽象方法,系统就会报错
    void test(); // 只定义一个抽象方法
}

相关文章

  • java 注解

    本文介绍java中的注解,第一部分给出注解的基础介绍,第二部给出一个注解的应用实例。 Java注解分为2个部分 自...

  • ByteBuddy(十四)—添加和删除Java注释

    本章介绍如何动态添加和删除在构造函数、Java方法和实例变量上注解的Java注解。 本章被认为是复杂的。本概述有助...

  • Java注解(Annotation)- 实例

    1、AOP切面 注解 切面 连接点 Spring实体类 测试用例 2、使用@Valid+BindingResult...

  • JAVA之实例注解

    @Override注解:用来指定方法重写的,只能修饰且只能用于方法重写。@Deprecated 注解: 可以用来注...

  • Java——注解(Annotation)入门学习

    学习资料: Java编程思想 ——第20章 公共技术点之 Java 注解 Annotation 注解(Annota...

  • Spring注解原理探索(三)

    之 Java如何识别注解 关键词:Java 反射java.lang.reflect 包,实现反射功能的工具类。注解...

  • Spring注解原理探索(一)

    之 Java元注解释义 Question 注解在Java中如何起作用? Spring是如何识别注解? 如何自定义注...

  • 干货系列之java注解

    干货系列之java注解 前言 java反射和注解在java里面很重要,但是很多人对这方面的知识理解不是很好,我来说...

  • Java注解原理及实例

    1. 什么是注解 Annontation是Java5开始引入的新特征,中文名称叫注解。它提供了一种安全的类似注释的...

  • 菜鸟学服务端技术----Spirng基础

    注解 Java基础加强总结(一)——注解(Annotation) java中的注解是如何工作的? java 注解 ...

网友评论

      本文标题:JAVA之实例注解

      本文链接:https://www.haomeiwen.com/subject/lvltlrtx.html