1. 注解(标注)概念:从字面意思理解是对被标注的对象(类,接口,枚举,注解类,方法,参数)的一个标记,有这个标记有什么用呢?就像学习中“划重点”的方式一样,被标记的对象肯定是特殊需要特别关照的对象,在使用时能快速找到的对象,这就是注解的意思。如果还是有点懵,那就只需要记住,凡是被标注的对象都是特殊的。

例子1:就像建筑工地的楼一样,在一片地方正在建造的楼有很多,但其中每楼每户都是被标注过的,标注他们的注解是:单元号、门牌号,所以以后通过单元号、门牌号就能轻易找到它们。

例子2:世界上有很多人,而每个人都有自己的名字,而名字就是这个人的注解,因为通过这个名字就可以找到这个人。

-注解标注的对象有时是具体的如例子1,例子2. 也可以是一类的:

例子3:人大概可以分为三种肤色(注解/标注):白种人,黄种人,黑种人,所以通过各自的肤色(注解/标注)就可以找到对应的这一类人。

2.注解的用途:这个问题要配合元注解说明:元注解:用来标注注解的注解,用来配置这个注解的基本属性:@Target(ElementType...)此注解的标注范围,用在哪里(类,接口,枚举,注解类,方法,参数),   @Retention(RetentionPolicy...)此注解什么时候有效。

  -元注解 有效期配置:@Retention(RetentionPolicy.SOURCE):注解将被编译器丢弃(该类型的注解信息只会保留在源码里,源码经过编译后,注解信息会被丢弃,不会保留在编译好的class文件里

    使用场景:用来让读源码的人看的(个人猜想),其他作用还没发现

  -元注解  有效期配置:@Retention(RetentionPolicy.CLASS):注解在class文件中可用,但会被VM丢弃(该类型的注解信息会保留在源码里和class文件里,在执行的时候,不会加载到虚拟机中),请注意,当注解未定义Retention值时,默认值是CLASS,如Java内置注解,@Override,@Deprecated、@SuppressWarnning等

    使用场景:编译器使用的

  -元注解  有效期配置:@Retention(RetentionPolicy.RUNTIME):注解信息将在运行期(JVM)也保留,因此可以通过反射机制读取注解的信息(源码、class文件和执行的时候都有注解的信息),如SpringMvc中的@Controller、@Autowired、@RequestMapping等。  

    使用场景:通过java反射机制获取到此注解中的参数内容,或此注解标注过的对象,用于做不同的业务处理。

java注解的概念理解的更多相关文章

  1. Java 注解的概念与种类

    Java 注解的概念与种类 一,什么是注解 注解和XML文件都是常用的,对web项目进行配置性描述的方式. 举个最简单的例子,对于一个Servlet,比如LoginServlet,采用如下方式: @W ...

  2. Java注解基础概念总结

    注解的概念 注解(Annotation),也叫元数据(Metadata),是Java5的新特性,JDK5引入了Metadata很容易的就能够调用Annotations.注解与类.接口.枚举在同一个层次 ...

  3. 对Java 注解的一些理解

    转载自https://blog.csdn.net/javazejian/article/details/71860633 引入 注解最简单的使用方式 Java注解与普通修饰符(public\stati ...

  4. Java分布式 一些概念理解

    转至 java那些事 2017-02-09  有些朋友工作一年了觉得该深入一下子了,所以想深入学习一下以提升自己的专业技能,想问一下如何入门Java分布式应用,学习过程大致是怎么样的,涉及到那些知识, ...

  5. (转)深入理解Java注解类型(@Annotation)

    背景:在面试时候问过关于注解的问题,工作中也用到过该java的特性,但是也没有深入的了解. 秒懂,Java 注解 (Annotation)你可以这样学 ps:注解最通俗易懂的解释 注解是一系列元数据, ...

  6. 理解Java注解类型

    一. 理解Java注解 注解本质是一个继承了Annotation的特殊接口,其具体实现类是Java运行时生成的动态代理类.而我们通过反射获取注解时,返回的是Java运行时生成的动态代理对象$Proxy ...

  7. 理解java注解

    @是java注解,即annotation. 注解功能可以理解为插件,是代码级别的插件,在类的方法上写:@XXX,就是在代码上插入了一个插件. Java注解是附加在代码中的一些元信息,用于一些工具在编译 ...

  8. 你真的理解Java 注解吗?

    你真的理解Java 注解吗? 1.什么是注解? 官方解释: Java 注解用于为 Java 代码提供元数据.作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的.Java ...

  9. 深入理解 Java 注解

    深入理解 Java 注解 本文内容基于 JDK8.注解是 JDK5 引入的,后续 JDK 版本扩展了一些内容,本文中没有明确指明版本的注解都是 JDK5 就已经支持的注解.

随机推荐

  1. malloc 函数详解【转】

    转自:https://www.cnblogs.com/Commence/p/5785912.html 很多学过C的人对malloc都不是很了解,知道使用malloc要加头文件,知道malloc是分配一 ...

  2. jenkins findbugs流编码问题:DM_DEFAULT_ENCODING

    报错信息: MessageParserUtil.java:122, DM_DEFAULT_ENCODING, Priority: High Dm: Found reliance on default ...

  3. 利用jstack命令定位占用cpu高的java线程及具体错误代码信息

    1.先用top查询某进程的线程CPU占用情况,定位到cpu占用高的进程pid 2.根据pid定位具体的线程top -p PID -H ,找出占用cpu最大的pid,此处占用cpu比较平均,我们随便选择 ...

  4. CentOS 6.3下NFS安装配置

    CentOS 6.3下NFS安装配置 一.环境介绍   NFS服务器:CentOS6.3 192.168.8.20 NFS客户端:CentOS6.5 192.168.8.39 二.服务器端安装配置   ...

  5. node 相关网站

    包管理网站:https://www.npmjs.com/

  6. 前端工程化-webpack-cli(官方开发中。。。)

  7. js高阶函数map和reduce

    map 举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个数组[1, 2, 3, 4, 5, 6, 7, 8, 9]上,就可以用map实现如下: 由于map()方法定义在JavaScr ...

  8. win10下vscode配置sftp

    sftp配置 1.在vscode中下载sftp插件 在vscode中快捷键 ctrl+shift+P 打开指令窗口,输入extension:install,回车,左侧即打开扩展安装的界面  在搜索框中 ...

  9. 2017-05~06 温故而知新--NodeJs书摘(一)

    前言: 毕业到入职腾讯已经差不多一年的时光了,接触了很多项目,也积累了很多实践经验,在处理问题的方式方法上有很大的提升.随着时间的增加,愈加发现基础知识的重要性,很多开发过程中遇到的问题都是由最基础的 ...

  10. 持续集成一:git上传代码

    先注册一个账号,注册地址:https://github.com/ 记住地址 下载git本地客户端,下载地址:https://git-scm.com/download/win 一路next傻瓜安装,加入 ...