2020-05-19

注解的作用:

不是程序本身,可以对程序做出解释,和注释有相似之处。

可以被其他程序(如编译器)所读取。

注解的格式:以“@注解名”在代码上存在,还可以在其中添加一些参数。

注解在哪里使用:可以附在包,类,方法,字段上面。等于给他们添加了额外的辅助信息。我们可以通过反射机制实现对这些元数据的访问。

注解举例:

@override:重写的注解

@Deprecated:过时的注解

元注解:对注解的注解。有如下四类元注解。

@Target:用于描述注解的使用范围(即被描述的注解可以用在什么地方)

@Retention:表示需要在什么级别保存注释信息,用于描述注解的生命周期(source>class>runtime)

@Document:说明该注解将被包含在javadoc中

@Inherited:说明子类可以继承父类中的该注解

自定义注解:使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口

@interface用来声明一个注解,格式:public @interface 注解名{定义内容}

其中的每一个方法实际是声明了一个配置参数

方法的名称就是参数的名称

返回值类型就是参数的类型(返回值只能是基本类型,Class,String,enum)

可以通过default来声明参数的默认值

如果只有一个参数成员,一般参数为value

注解元素必须要有值,我们定义注解元素时,经常使用空字符串,0作为默认值。

注解 java 反射_java注解和反射相关推荐

  1. 注解 java 原理_Java注解基本原理

    注解目前非常的流行,很多主流框架都支持注解,而且自己编写代码的时候也会尽量的去用注解,一时方便,而是代码更加简洁. 注解的语法比较简单,除了@符号的使用之外,它基本与Java固有语法一致.Java S ...

  2. java注解的反射_Java注解与反射

    概要 本文主要是总结Java注解与反射的相关知识,加深自己对Java类动态语言的理解,同时为日后学习Spring打下基础. 注解: 什么是注解 Annotation的作用 不是程序本身,但是可以对程序 ...

  3. java 注解与反射_Java注解与反射直接上手

    什么是注解(Annotation) 注解顾名思义为注释.讲解,可以理解为一种标签或标记,可以用在类.方法或者域上.向类.方法等添加注解,相当于给他们贴上了一层标签. 注解使用 在使用注解时,在类名.方 ...

  4. java注解详解_Java注解详解

    Annotation是从JDK5.0开始引入的新技术. Annotation的作用:–不是程序本身,可以对程序作出解释.(这一点,跟注释没什么区别)–可以被其他程序(比如:编译器等)读取.(注解信息处 ...

  5. JAVA注解行_java注解

    注释 单行注释 // 多行注释 /*  */ 文档注释/**  */ 注解 Annotation(注释 注解) 1.注解的写法 @XXX[(一些信息)] 2.注解放置在哪里 类的上面:属性上面:方法上 ...

  6. java注解使用变量_java注解的使用

    java中注解的使用 1.说再前面 使用注解开发的好处 1.使代码更加干净易读,易于维护修改.比如,以前使用spring的开发,都是基于xml文件实现了统一的配置管理,但是缺点也是显而易见的,就是随着 ...

  7. java注解怎么写_java注解

    写在前面 现在的java主流框架中,注解无处不在,因此我们完全有必要搞明白注解到底是什么.如何理解注解,它到底是怎么起作用的. 注解的定义 java是这样定义注解的:Java 注解用于为 Java 代 ...

  8. java getinstance 反射_JAVA类加载和反射介绍

    简单的来说,反射机制指的是程序在运行时能够获取自身的信息.在java中,只要给定类的名字,那么就可以通过反射机制来获得类的所有信息. 反射机制的优点就是可以实现动态创建对象和编译,体现出很大的灵活性, ...

  9. java 注解报错_java注解验证接收参数 返回注解字段的错误

    1.在controller接口方法接收参数加上 @Valid注解 并且在实体类参数后紧跟 BindingResult bindingresul BindingResultMsgUtil工具类: pub ...

最新文章

  1. 前沿科技 | 中科院科学家在关于运动规划的环路机制研究方面获进展
  2. matlab中用colfilt实现非线性滤波(图片版)
  3. maven 错误:HttpServlet was not found on the Java
  4. asp.net core轻松入门之MVC中Options读取配置文件
  5. springcloud gateway 源码解析、请求响应流程、第三方响应结果在 gateway 的经过
  6. Zookeeper原理和实战开发经典视频教程 百度云网盘下载
  7. Chapter7-10_Deep Learning for Question Answering (1/2)
  8. C语言嵌入式系统编程修炼之(四)屏幕操作
  9. 为什么领导们总是劝大家不要只盯着工资?
  10. springmvc应用-自定义参数解析器
  11. 矩阵中求最大二维矩阵
  12. 嵌入式Linux的学习路线
  13. 焓湿图软件 android,焓湿图查询计算软件
  14. dns劫持教您dns被劫持如何修复、dns劫持如何修复
  15. Wifi4更换Wifi6路由器的使用体验
  16. 我辞去高薪程序员工作,转行干淘宝,每天起床睁开眼,先赔几千!转行,你怕么?...
  17. Fildder拦截请求并修改请求参数
  18. 水文预报中的确定性系数如何计算确定
  19. 实习生两大杀手之一:Git 引入
  20. 黑马程序员----怀揣梦想的翅膀

热门文章

  1. 【Spark深入学习 -14】Spark应用经验与程序调优
  2. 创建私有CA详细图解
  3. VSCode 设置中文语言
  4. 【转】FFmpeg获取DirectShow设备数据(摄像头,录屏)
  5. poj——3177Redundant Paths
  6. selenium webdriver之eclipse java开发环境搭建
  7. 和rgb画面质量谁好_双11内存RGB灯条如何选?低于400元,只聊酷兽和阿斯加特
  8. 超融合服务器虚拟化优缺点,超融合是什么 意思?为什么必须是软硬件一体?...
  9. oracle 删掉虚拟目录,创建虚拟目录失败,必须为服务器名称指定“localhost”
  10. HashMap,LinkedHashMap,TreeMap的有序性