二十八、JavaSE----注解

简介: 二十八、JavaSE----注解

注解:

       Java注解(Annotation)又称为元数据,它为我们在代码中添加信息提供了一种形式化的方法。 它是JDK1.5引入的,Java定义了一套注解,共有7个,3个在java.lang中,剩下4个在 java.lang.annotation 中。


作用在代码中的注解有三个,它们分别是:


@Override :重写标记,一般用在子类继承父类后,标注在重写过后的子类方法上。如果发现 其父类,或者是引用的接口中并没有该方法时,会报编译错误。


@Deprecated :用此注解注释的代码已经过时,不再推荐使用。


@SuppressWarnings :这个注解起到忽略编译器的警告作用。


元注解有四个,元注解就是用来标志注解的解释。它们分别是:


@Retention :标识如何存储,是只在代码中,还是编入class文件中,或者是在运行时可以通过 反射访问。

RetentionPolicy.SOURCE:注解只保留在源文件,当Java文件编译成class文件的时候,注解被遗弃。


RetentionPolicy.CLASS:注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期。


RetentionPolicy.RUNTIME:注解不仅被保存到class文件中,jvm加载class文件之后,仍然存在。


@Documented :标记这些注解是否包含在JavaDoc中。


@Target :标记这个注解说明了 Annotation所修饰的对象范围,Annotation可被用于 packages, types (类、接口、枚举、Annotation类型)、类型成员(方法、构造方法、成员变 量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。取值如下:


21.png


@inherited :标记这个注解是继承于哪个注解类的。


从JDK1.7开始,又添加了三个额外的注解,它们分别是


@SafeVarargs :在声明可变参数的构造函数或方法时,Java编译器会报unchecked警告。使 用@SafeVarargs可以忽略这些警告。


@FunctionalInterface :表明这个方法是一个函数式接口。


@Repeatable :标识某注解可以在同一个声明上使用多次。


相关文章
|
4月前
|
存储 Java 数据库
若依框架----源码分析(@Log)
若依框架----源码分析(@Log)
289 0
|
8月前
|
JSON Java 开发工具
jackson学习之八:常用方法注解
熟悉和使用jackson常用的方法注解
jackson学习之八:常用方法注解
|
10月前
|
Java
【JavaSE】Java基础语法(十五):继承
1. 继承的实现 继承的概念 继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新 定义,以及追加属性和方法 实现继承的格式 继承通过extends实现 格式:class 子类 extends 父类 { } 举例:class Dog extends Animal { }
|
10月前
|
Java
【JavaSE】Java基础语法(四十三):反射
概述: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法(包括私有的);对于任意一个对象,都能够调用它的任意一个方法和属性(包括私有的); 这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.
|
10月前
|
Java
【JavaSE】Java基础语法(十八):接口
1. 接口的概述 接口就是一种公共的规范标准,只要符合规范标准,大家都可以通用。 Java中接口存在的两个意义 用来定义规范 用来做功能的拓展
|
Java Spring
二十六、JavaSE----反射
二十六、JavaSE----反射
二十六、JavaSE----反射
|
编译器
二十五、JavaSE----泛型
二十五、JavaSE----泛型
二十五、JavaSE----泛型
|
SQL 安全 算法
二十九、JavaSE----关于null的处理方式
二十九、JavaSE----关于null的处理方式
二十九、JavaSE----关于null的处理方式
|
PHP C#
C#(十五)之C#中的类
本篇内容记录了定义类文件及代码演示。
80 0
C#(十五)之C#中的类
|
Java 程序员 Spring
Java Review (十七、面向对象----枚举类)
Java Review (十七、面向对象----枚举类)
123 0
Java Review (十七、面向对象----枚举类)