java注解——内置注解和四种元注解
java内置注解:
@Override(重写方法):被用于标注方法,用于说明所标注的方法是重写父类的方法
@Deprecated(过时方法):用于说明所标注元素,因存在安全问题或有更好选择而不鼓励使用,如果强行使用,则编译器会发出警告
@SuppressWarnings(消除警告):用于取消编辑器所显示的警告,有如下属性值
——deprecation:使用已被@Deprecated标注的程序元素
Date date = new Date();
//消除警报
@SuppressWarnings("deprecation")
int hour = date.getHours();//该方法以被弃用
System.out.println(hour);
——unused:程序含有未被使用的元素
——serial:在可序列化的类上缺少serialVersionUID定义
自定义注解:
注释属性默认没有默认值,在后面加default设置默认值
public @interface Service {
String value() default "";
int version() default 0;
}
元注解:java提供了四个用于修饰自定义注解的元注解
@Target:用于指定被修饰的自定义注解只能用于修饰程序中哪些元素,有四个常用属性
@Retention:用于指定被修饰的自定义注解可以保留多久,有三个常用属性
@Documented:执行javadoc命令时,被该元注解修饰的自定义注解也会生成在文档中
@Inherited:如果父类所使用的注解有此修饰,则子类可以继承该注解,否则不能
//TYPE用于类、接口或者枚举声明
//FIELD用于全局属性
//METHOD用于方法
//PARAMETER用于方法的参数
@Target({ElementType.TYPE,ElementType.FIELD})//数组时,一个值不用写{} //SOURCE源码
//CLASS编译器
//RUNTIME运行
@Retention(RetentionPolicy.RUNTIME) //生成的文档是否含有此注释
@Documented //子类会继承此类上的注释(不继承类里的)
@Inherited
public @interface Service { String value() default ""; int version() default 0; }
java注解——内置注解和四种元注解的更多相关文章
- JSP 内置对象的四种属性范围
在jsp页面中的对象,包括用户创建的对象(例如,javaBean对象)和JSP的隐含对象,都有一个范围属性.范围定义了在什么时间内,在哪一个JSP页面中可以访问这些对象.例如,session对象在会话 ...
- Spring MVC内置支持的4种内容协商方式【享学Spring MVC】
每篇一句 十个光头九个富,最后一个会砍树 前言 不知你在使用Spring Boot时是否对这样一个现象"诧异"过:同一个接口(同一个URL)在接口报错情况下,若你用rest访问,它 ...
- java 并发——内置锁
坚持学习,总会有一些不一样的东西. 一.由单例模式引入 引用一下百度百科的定义-- 线程安全是多线程编程时的计算机程序代码中的一个概念.在拥有共享数据的多条线程并行执行的程序中,线程安全的代码会通过同 ...
- java script 内置对象
java script 内置对象 Date 日期对象 字符串对象 定义字符串的方法就是直接赋值 使用 String 对象的 toUpperCase() 方法来将字符串小写字母转换为大写,反之 toLo ...
- java的四个元注解 @Retention @Target @Document @Inherited
1. @Retention :注解的保留位置 @Retention(RetentionPolicy.SOURCE) //注解仅存在于源码中,在class字节码文件中不包含 @Retention( ...
- 普通java类加入spring容器的四种方式
今天在自己开发的工具类中使用了spring注入的方式调用了其他类,但是发生的报错,在整理了后今天小结一下. 首先简单介绍下spring容器,spring容器是整个spring框架的核心,通常我们说的s ...
- jsp九大内置对象、四种作用域、跳转方式
jsp有四种属性范围: page -> 页面级别,显然只有在一个页面内可用. request -> 请求级别 服务器跳转,一次请求之后消失. session -> 会话级别 客户端跳 ...
- JSP九大内置对象和四种属性范围解读
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文首先主要解说了JSP中四种属性范围的概念.用法与实例. 然后在这个基础之上又引入了九 ...
- Jsp学习总结(1)——JSP九大内置对象和四种属性范围解读
一.四种属性范围 1.1.在JSP中提供了四种属性保存范围 page:在一个页面内保存属性,跳转之后无效 request:在一次服务请求范围内,服务器跳转后依然有效 session:-在一次会话范围内 ...
随机推荐
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 显示代码
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- windows下安装subversion
前言: 最近在写windows版本下svn hooks(钩子) post-commit的实现.所以会需要在windows下安装相应的subversion.经过一番查询后,决定使用VisualSVN ...
- Atcoder Grand Contest 037B(DP,组合数学,思维)
#include<bits/stdc++.h>using namespace std;const long long mod = 998244353;string s;int a[3000 ...
- Kubernetes 1.17.2 高可用部署
20.0.0.200 10.0.0.200 bs-k8s-master01 管理节点 2c2g 20.0.0.201 10.0.0.201 bs-k8s-master02 管理节点 2c2 ...
- redis 之redis集群与集群配置
一.为什么要用集群 redis3.0集群采用P2P模式,完全去中心化,将redis所有的key分成了16384个槽位,每个redis实例负责一部分slot,集群中的所有信息通过节点数据交换而更新. r ...
- Py西游攻关之基础数据类型(二)-列表
Py西游攻关之基础数据类型 - Yuan先生 https://www.cnblogs.com/yuanchenqi/articles/5782764.html 五 List(列表) OK,现在我们知 ...
- sqlserver 取数据常用
sqlDataReader: public SqlDataReader GetAuth_CourtListByAuth(int autIntNo) { // Create Instance of Co ...
- 使MVC路由表无效
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(Glob ...
- 小程序PromiseAll定义
var promiseAll = (funcs, callback) =>{ var promises = [] for(var i=0; i<funcs.length; i++){ pr ...
- CSS如何实现三列布局?如果两端固定、中间是自适应又该如何做?
使用浮动布局来实现 左侧元素与右侧元素优先渲染,分别向左和向右浮动 中间元素在文档流的最后渲染,并将 width 设为 100%,则会自动压到左右两个浮动元素的下面,随后在中间元素中再添加一个div元 ...