您的位置 首页 java

Java注解(Annotation)简介

从Java5版本之后可以在源代码中嵌入一些补充信息,这种补充信息称为注解( annotation ),是 java 平台中非常重要的一部分。注解都是@符号开头的,例如我们在学习方法重写时使用过的@Override注解。同Class和Interface一样,注解也属于一种类型。

Annotation可以翻译为“注解”或“注释”,一般翻译为“注解”,因为“注释”一词已经用于说明“//”、“/**…*/”和“/*…*/”等符号了,这里的“注释”是英文Comment翻译。

注解并不能改变程序的运行结果,也不会影响程序运行的性能。有些 注解 可以在编译时给用户提示或警告,有的注解可以在运行时读写 字节码 文件信息。

注解可以元数据这个词来描述,即一种描述数据的数据。所以可以说注解就是源代码的元数据。例如以下代码:

 @ Override 
public String toString() {
    return "开课吧广场Java教程";
}1234复制代码类型:[java]  

上面的代码重写了Object类的toString()方法并使用了@Override注解。如果不使用@Override注解标记代码,程序也能够正常执行。那么这么写有什么好处吗?事实上,使用@Override注解就相当于告诉编译器这个方法是一个重写方法,如果父类中不存在该方法,编译器便会报错,提示该方法没有重写父类中的方法。这样可以防止不小心拼写错误造成麻烦。

例如,在没有使用@Override注解的情况下,将 toString ()写成了toStrring(),这时程序依然能编译运行,但运行结果会和所期望的结果大不相同。

注解常见的作用有以下几种:

1、生成帮助文档。这是最常见的,也是Java最早提供的注解。常用的有@see、@param和@return等;

2、跟踪代码依赖性,实现替代配置文件功能。比较常见的是Spring2.5开始的基于注解配置。作用就是减少配置。现在的框架基本都使用了这种配置来减少配置文件的数量;

3、在编译时进行格式检查。如把@Override注解放在方法前,如果这个方法并不是重写了父类方法,则编译时就能检查出。

无论是哪一种注解,本质上都一种数据类型,是一种接口类型。到Java8为止 JavaSE 提供了11个内置注解。其中有5个是基本注解,它们来自于 java.lang 包。有6个是元注解,它们来自于java.lang.annotation包,自定义注解会用到元注解。

提示:元注解就是负责注解其他的注解。

基本注解包括:@Override、@Deprecated、@SuppressWarnings、@SafeVarargs和@FunctionalInterface。后面我们会逐一介绍。

文章来源:智云一二三科技

文章标题:Java注解(Annotation)简介

文章地址:https://www.zhihuclub.com/181675.shtml

关于作者: 智云科技

热门文章

网站地图