注解

  • 注解:给计算机或编译器解释说明程序
  • 注释:给程序员解释说明程序

注解作用的分类

  1. 编写文档:通过代码里标识的注解生成文档【生成DOC文档】
  2. 代码分析:通过代码里标识的注解 void eat();对代码进行分析【使用反射】
  3. 编译检查:让编译器实现基本的检查【override】
package annotation;/*** 注解演示JavaDoc** @author liuhulin* @version 1.0.0* @since 1.5*/
public class AnnotationTest {/*** 计算两数之和** @param a 整数* @param b 整数* @return 返回两数之和*/public int add(int a, int b) {return a + b;}
}

JDK内置注解

  • @Override:检测被注解标注的方法是否继承自父类
  • @Deprecated: 将注解内容建议不要使用过时方法
  • SupperPressWarnings(“all”):压制警告

自定义注解

  • 格式:元注解(用来接实注解的注解)

public @interface 注解名称{}

  • 注解本质上就是一个接口,默认继承Annotation接口
  • 属性:接口中定义的抽象方法
    1. 属性的返回值类型
    • 基本数据类型
    • 字符串String
    • 枚举
    • 注解
    • 以上类型的数组
    1. 定义了属性,在使用时需要给属性赋值
    • 如果定义属性时,使用default关键字默认初始化值,则使用注解时可以不赋值
    • 如果只有一个属性需要赋值,且属性的名称是value,则value可以省略,直接定义值即可
    • 数组赋值时,使用{}包裹,如果数组中只有一个值,括号可以省略

元注解:用来描述注解的注解

  • @Target:描述注解能够作用的位置

ElementType的取值

  1. TYPE:可以作用在类上
  2. METHOD:可以作用在方法上
  3. FIELD:可以作用在成员变量上
  • @Retention:描述注解被保留的阶段

@Retention(RetentionPolicy.RUNTIME)

当前描述的注解可以被保留到class字节码文件中,并被JVM读取

  • @Documented:描述注解是否被抽取到API文档中
  • @Inherited:描述注解是否被子类继承

【Java】基于注解开发初探相关推荐

  1. MyBatis-学习笔记04【04.自定义Mybatis框架基于注解开发】

    Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...

  2. Java基于注解和反射导入导出Excel

    代码地址如下: http://www.demodashi.com/demo/11995.html 1. 构建项目 使用Spring Boot快速构建一个Web工程,并导入与操作Excel相关的POI包 ...

  3. Java基于springboot开发的大学生档案系统非常好用+论文

    简介 Java基于springboot开发的学生档案系统,包含了权限管理,学生档案,学生成绩录入,教师管理等. 演示视频 https://www.bilibili.com/video/BV1XV411 ...

  4. java基于ssm开发的花店系统

    Java基于ssm开发网上花店系统单商家系统,主要有商品分类,列表,详情,购物车,订单等功能. 演示视频: https://www.bilibili.com/video/BV1bT4y1N7vw/?s ...

  5. java元婴期(28)----java进阶(springmvc(2)---入门程序(下)基于注解开发(重点掌握))

    入门程序 非注解的处理器映射器和适配器 1.非注解的处理器映射器 处理器映射器: org.springframework.web.servlet.handler.BeanNameUrlHandlerM ...

  6. java基于ssm开发的好看的家装网装修网站装修系统有源码有论文

    简介 本平台主要是家装网站.管理员发布装修案例,看工地,装修设计师,装修攻略,装修知识文章等,嵌入3d全景图.普通用户注册,填写装修房型报价等. 演示视频: https://www.bilibili. ...

  7. Java基于springboot开发的漂亮的个人家乡博客系统有论文

    概述 个人博客相册家乡主题,用户注册后可以发布关于家乡的特色文章介绍,可以发布照片,相册管理,留言,评论,回复,收藏,关注 演示视频 https://www.bilibili.com/video/BV ...

  8. Java自定义注解开发

    目录 一.JAVA注解 1.java注解的定义 2.java注解的分类 2.1 JDK基本注解 2.2 JDK元注解 2.3 自定义注解 3.注解分类 3.1标记Annotation: 3.2 元数据 ...

  9. java基于ssm开发的美妆商城化妆品电商系统有论文

    简介 Java基于ssm(可以转springboot项目哦)开发的美妆商城系统,主要是卖化妆品的系统,用户可以浏览商品,加入购物车,下单,在个人中心管理自己的订单.管理员可以管理自己的商品,发布商品, ...

最新文章

  1. AngularJS - 自定义指令
  2. AppSettings和ConnectionStrings的使用。
  3. axure7.0元件库 安卓_AxureRP 7.0 元件库下载
  4. C语言 socket listen()函数(socket()函数创建的socket(套接字描述符)默认是一个主动类型的,listen函数将socket变为被动类型的,等待客户的连接请求)
  5. leetcode-581-Shortest Unsorted Continuous Subarray
  6. Netweaver和CloudFoundry里的trace开关
  7. python pyqt eric_科学网—PyQt及Eric的安装 - 张鲁新的博文
  8. Java IO: InputStreamReader和OutputStreamWriter
  9. 网管交换机与非网管交换机的利弊介绍
  10. VBA SQL查询-记录集转数组
  11. mysql中sql语句使用_mysql数据库中用到sql语句
  12. Javascript面向对象二
  13. 简书吐槽大会|山东被曝大量不合格疫苗
  14. python-levenshtein —— 字符串相似度的计算
  15. gitee创建ssh公钥
  16. 取代ClubHouse的节奏!这款开源聊天室太好用了
  17. windows下ruby安装环境配置
  18. Java毕业设计-小区物业管理系统
  19. android relativelayout 垂直居中,RelativeLayout子控件垂直居中
  20. xposed框架_Xposed框架安装、使用以及插件开发

热门文章

  1. Python基础-map/reduce/filter
  2. OUR D3.JS 数据可视化专题站(转)
  3. BZOJ3239 Discrete Logging
  4. JAVA常用框架和插件
  5. java枚举的例子_Java枚举例子
  6. 重装oracle12c_记一次win server 2012上oracle12c的安装过程
  7. 目前计算机病毒只有网络型病毒吗,在web.xml中使用()标签配置过滤器
  8. ajax配置要求,AJAX浅谈
  9. amaze 绝对位置 html,Amaze UI 兼容性列表
  10. flex 会使div撑满_如何讲清楚Flex弹性盒模型?(中)