目录:

  1、注解概述
  2、常见的 Annotation 示例
  3、自定义 Annotation
  4、JDK 中的元注解
  5、利用 反射获取注解信息(在反射部分 涉及)
  6、JDK 8 中注解的新特性

1、注解概述

  从 JDK 5.0 开始 , Java 增加了对元数据 MetaData ) 的支持 , 也就是
Annotation( 注解)
  Annotation 其实就是代码里的 特殊标记 , 这些标记可以在编译 , 类加
载 , 运行时被读取 , 并执行相应 的处理。通过 使用 Annotation, 程序员
可以在不改变原有逻辑的情况下 , 在源文件中嵌入一些 补充 信息 。 代
码分析工具、开发工具和部署工具可以通过这些补充信息进行验证
或者进行部署。
  Annotation 可以像修饰符一样被使用 , 可用于 修饰包 类 , 构造器 , 方
法 , 成员变量 , 参数 , 局部变量的声明 , 这些信息被保存在 Annotation
的 “name=value” 中。

  在 JavaSE 中,注解的使用目的比较简单,例如标记过时的功能,
忽略警告等。在 JavaEE/Android 中注解占据了更重要的角色,例如
用来配置应用程序的任何切面, 代替 JavaEE 旧版中所遗留的繁冗
代码和 XML 配置等 。
  未来的开发模式都是基于注解的, JPA 是基于注解的, Spring2.5 以
上都是基于注解的, Hibernate3.x 以后也是基于注解的,现在的
Struts2 有一部分也是基于注解的了,注解是一种趋势 ,一定程度上
可以说: 框架 = 注解 + 反射 + 设计模式。

2、常见的 Annotation 示例

参考以下这篇,很详细:

  https://www.runoob.com/w3cnote/java-annotation.html

【java se】java注解的更多相关文章

  1. java SE (java Standard Edition)

    14.10.22 学习java SE的Object: -------------------------------------15.11.18----

  2. Java SE Java EE Java ME 的区别

    Java SE(Java Platform,Standard Edition) Java SE 以前称为 J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.J ...

  3. Java SE ,Java EE和Java ME 的区别

    JAVA 语言版本  Java SE (J2SE)(Java2 Platform Standard Edition,java平台标准版): 包含标准的 JDK.开发工具.运行时环境和类库.适合开发桌面 ...

  4. JAVA EE,JAVA SE,JAVA ME,JDK,JRE,JVM之间的区别

    JAVA EE是开发企业级应用,主要针对web开发有一套解决方案. JAVA SE是针对普通的桌面开发和小应用开发. JAVA ME是针对嵌入式设备开发,如手机. JRE是程序的运行环境 JDK是程序 ...

  5. Java Se : Java NIO(服务端)与BIO(客户端)通信

    Java目前有三种IO相关的API了,下面简单的说一下: BIO,阻塞IO,最常用的Java IO API,提供一般的流的读写功能.相信学习Java的人,都用过. NIO,非阻塞IO,在JDK1.4中 ...

  6. [编程语言][java][java se]java泛型中? T K V E含义(学习)

    ? 表示不确定的java类型,类型是未知的. T  表示java类型. K V 分别代表java键值中的Key Value. E 代表Element,特性是枚举. 1.意思     jdk中的K,V, ...

  7. Java SE 基础知识(一)

    一.基础知识 1. Java SE : Java Standard Edition Java ME : Java Micro Edition Java EE : Java Enterprise Edi ...

  8. Java EE、Java SE和Java ME

    Java SE=Java Standard EditionJava EE=Java Enterprise EditionJava ME=Java Mobile Edition SE主要用于桌面程序,控 ...

  9. [零基础学JAVA]Java SE基础部分-01. Java发展及JDK配置

    转自:http://redking.blog.51cto.com/27212/114976 重点要会以下两个方面: 1. 抽象类与接口 2. API==>类集 这是两个最重要部分,这两个部分理解 ...

  10. java se系列(一)开发前奏

    1. 软硬件知识 电子计算机:俗称电脑,是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备.由硬件和软件所组成,没有安装任何软件的计算机称为裸机 cpu:是一台计算机的运算核心和控制核 ...

随机推荐

  1. WIN10技巧

    1.快速打开"开始---自动启动"文件夹:开始--支行--shell:startup 2

  2. 前端js重组树形结构数据方法封装

    不知道大家平时工作中,有没有遇到这样一种情况:后端接口返回的数据,全都是一维的数组,都是平铺直叙式的数据,业务需求却要你实现树形结构的功能.那么,针对这种情况该怎么办呢?是跟后台好好沟通一下呢,还是沟 ...

  3. Day11继承、封装、多态-面向对象编程(2)

    封装 我们设计程序要追求 高内聚,低耦合 . 高内聚:类的内部数据操作细节自己完成,不允许外部干涉 低耦合:仅暴露少量方法给外部使用 封装(数据的隐藏) 通常,应禁止直接访问一个对象中数据的实际表示, ...

  4. Mycat读写分离的简单实现

    目录 1.Mycat读写分离的配置 1.1.Mycat是什么 1.2.Mycat能干什么 1.2.1.数据库的读写分离 1.2.1.1.数据库读写分离图解 1.2.2.数据库分库分表 1.2.2.1. ...

  5. Python+Requests+Xpath实现动态参数获取实战

    1.古诗文网直接登录时,用浏览器F12抓取登录接口的入参,我们可以看到框起来的key对应的value是动态参数生成的,需获取到: 2.登录接口入参的值一般是登录接口返回的原数据值,若刷新后接口与对应源 ...

  6. C++:数据类型

    /** * C++ 数据类型 : https://www.runoob.com/cplusplus/cpp-data-types.html * * 布尔: bool * 字符: char 1 个字节 ...

  7. MySQL Orchestrator自动导换+VIP切换

    目录 Orchestrator总体结构...  测试环境信息...  Orchestrator详细配置...  SSH免密配置...  /etc/hosts配置...  visudo配置...  /e ...

  8. 插入排序(insertion_sort)——Python实现

      # 插入排序 # 作用:对给出的n个顺序不定的数进行排序 # 输入:任意数组A # 输出:按顺序排列的数组A # 时间复杂度 n(n-1) 至 (n(n-1))/2   # 插入排序过程 # 第一 ...

  9. PHP判断访问者手机移动端还是PC端的函数

    *移动端判断*/ function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset ($_SERVER['HTTP_X_WAP_PROF ...

  10. Dubbo 实现一个Route Factory(用于灰度发布)

    Dubbo 可以实现的扩展很多, 官方文档在这: https://dubbo.apache.org/zh/docs/v2.7/dev/impls/ (太简单了....) 下面我们实现一个Route F ...