Java 之 注解
一、注解介绍
注解概念:注解是说明程序的,给计算机看的。
注释概念:用文字描述程序的,给程序员看的。
注解定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是 JDK1.5 及以后版本引入的一个特效,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等前面,用来对这些元素进行说明,注释。
概念描述:
- JDk 1.5之后的新特性
- 说明程序的
- 使用注解:@注解名称
注解作用分类:
- 编写文档:通过代码里标识的注解生成文档【生成文档 doc 文档】
Demo:编写一个类,然后通过 javadoc 文件名.java 来生成 doc文档
/**
* 注解javadoc演示
*
* @author ks
* @version 1.0
* @since 1.5
*/
public class AnnoDemo1 { /**
* 计算两数的和
* @param a 整数
* @param b 整数
* @return 两数的和
*/
public int add(int a, int b ){
return a + b;
}
}
- 代码分析:通过代码里标识的注解对代码进行分析【使用反射】
- 编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】
二、JDK 中预定义注解
JDk 中预定义的三个最基本的注解注解:
- @Override:检测被该注解标注的方法是否是继承自父类(接口)的,它只能用在方法上面,会让编译器对这个方法进行格式检查,是否满足重写的要求。
- @Deprecated:该注解标注的内容,表示已过时
- @SuppressWarnings:压制警告,一般传递参数 all,压制所有的警告(@SuppressWarnings("all"))
Demo :
/**
* 内置注解
*/
@SuppressWarnings("all") // 表示压制所有的警告,可以作用与类与方法
public class AnnoDemo { @Override // 表示方法重写
public String toString() {
return super.toString();
} @Deprecated // 表示方法已经过时了,但是不能删除,为了向下兼容
public void show1() {
// 有缺陷
} public void show2() {
// 替代 show1方法
} public void demo() {
show1();
}
}
三、与文档注释相关的注解
1、文档注释
/**
文档注释
*/
2、常见的文档注解
@author:作者
@since:从xx版本加入的
@see:另请参考
@param:形参
@return:返回值
@throws或@exception:异常
四、JUnit 相关的注解
1、@Test :表示它是一个单元测试方法
这个方法需要是:
public void xxx() {}
2、@Before:表示在每一个单元测试方法之前执行
这个方法需要是:
public void xxx() {}
3、@After:表示在每一个单元测试方法之后执行
这个方法需要是:
public void xxx() {}
4、@BeforeClass:表示在类初始化阶段执行,而且只执行一次
这个方法需要是:
public static void xxx() {}
5、@AfterClass:表示在类的“卸载”阶段执行,而且只执行一次
这个方法需要是:
public static void xxx(){}
Java 之 注解的更多相关文章
- java自定义注解类
一.前言 今天阅读帆哥代码的时候,看到了之前没有见过的新东西, 比如java自定义注解类,如何获取注解,如何反射内部类,this$0是什么意思? 于是乎,学习并整理了一下. 二.代码示例 import ...
- lombok 简化java代码注解
lombok 简化java代码注解 安装lombok插件 以intellij ide为例 File-->Setting-->Plugins-->搜索"lombok plug ...
- JAVA自定义注解
在学习使用Spring和MyBatis框架的时候,使用了很多的注解来标注Bean或者数据访问层参数,那么JAVA的注解到底是个东西,作用是什么,又怎样自定义注解呢?这篇文章,即将作出简单易懂的解释. ...
- 深入理解Java:注解
注解作用:每当你创建描述符性质的类或者接口时,一旦其中包含重复性的工作,就可以考虑使用注解来简化与自动化该过程. Java提供了四种元注解,专门负责新注解的创建工作. 元注解 元注解的作用就是负责注解 ...
- Java Annotation 注解
java_notation.html div.oembedall-githubrepos { border: 1px solid #DDD; list-style-type: none; margin ...
- java自定义注解实现前后台参数校验
2016.07.26 qq:992591601,欢迎交流 首先介绍些基本概念: Annotations(also known as metadata)provide a formalized way ...
- Java Android 注解(Annotation) 及几个常用开源项目注解原理简析
不少开源库(ButterKnife.Retrofit.ActiveAndroid等等)都用到了注解的方式来简化代码提高开发效率. 本文简单介绍下 Annotation 示例.概念及作用.分类.自定义. ...
- paip.Java Annotation注解的作用and 使用
paip.Java Annotation注解的作用and 使用 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog. ...
- java自定义注解注解方法、类、属性等等【转】
http://anole1982.iteye.com/blog/1450421 http://www.open-open.com/doc/view/51fe76de67214563b20b385320 ...
- Java之注解
package com.demo.test; import java.lang.annotation.Documented; import java.lang.annotation.ElementTy ...
随机推荐
- selenium grid用法
一,selenium grid是什么? selenium是一个用于UI自动化测试的工具. selenium grid是selenium家族中的三大组件的一员.selenium grid有两个版本,gr ...
- sqllite 学习-1
C# SQLite 数据库操作学习: https://www.cnblogs.com/leemano/p/6578050.html SQLite 之 C#版 System.Data.SQLite 使用 ...
- pls_integer类型
转: pls_integer类型 2011-08-22 16:49:06 heqiyu34 阅读数 13413更多 分类专栏: Oracle 今天在看一个触发器代码的时候碰到了一个pls_inte ...
- 三种构建方式:Makefile、scons、scons cmake+ninja
三种构建方式: Makefile scons cmake+ninja https://ninja-build.org
- Linux记录-centos升级python3
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel -yyum install xz -ywget https://www.p ...
- Sq常用操作
sql创建表实例: CREATE TABLE mytable( id varchar(40) NOT NULL default '', userId varchar(40) NOT NULL defa ...
- Python数据抓取技术与实战 pdf
Python数据抓取技术与实战 目录 D11章Python基础1.1Python安装1.2安装pip1.3如何查看帮助1.4D1一个实例1.5文件操作1.6循环1.7异常1.8元组1.9列表1.10字 ...
- Silence Removal and End Point Detection MATLAB Code
转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/08/silence-removal-and-end-point-detection.html ...
- bootstrap模态框怎么传递参数
bootstrap参数传递可以用 data-参数名 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml&qu ...
- CF1197D Yet Another Subarray Problem
思路: 使用动态规划,在经典的最大子段和解法基础上进行扩展.dp[i][j]表示以第i个数为结尾,并且长度模m等于j的所有子段的最大cost. 实现: #include <bits/stdc++ ...