注解为我们在代码中添加信息提供一种形式化的方法, 使我们可以在稍后某个时刻非常方便的时候使用这些信息.
注解用来帮助我们将元数据(比如配置信息)与代码结合起来, 因为这就限定了注解的使用范围, 只有那些与代码结合非常紧密, 而java代码又不能很好(或很难)表述的配置信息才是使用注解的最佳场景.
注解的另一个作用可以用来简化一些重复性的工作, 以及自动化某些过程
注解在某种程度上可以看成修饰符的一种
注解的定义跟接口很像, 最终将编译成class文件
@Target, @Retention是注解的注解, 用来对注解进行定义, @Target用来说明注解将用在什么地方(方法or属性), @Retention用来说明注解在何时可用(Source 源码, Class 类文件, Runtime 运行时)
注解定义中, 会指定该注解包含的一些元素(也是元数据的定义), 与接口不同的是, 可以给这些元素指定一些默认值, 然后可以借助程序或者工具对这些元素的值(真正的元数据)进行分析处理, 这个正式注解强大所在
注解需要借助注解处理器来对注解的元数据进行解析处理, 注解处理器是注解的配套设施之一, 而注解处理器在处理注解元数据主要借助了JDK 5的反射机制, 比较有用的是AnnotatedElement接口的getDeclaredMethods()方法和getAnnotation()方法.
注解元素类型只能是:所有的基本类型(int, float, boolean等), String, Class, enum, Annotation, 以及以上类型的数组
注解不支持继承
注解元素的默认值必须是一个确定的值, 而且不能用null作为默认值, 因此, 使用空字符串或0作为默认值是一种常用的做法
@Inherited 这个注解的用法是:
如果你定义的注解加了该注解, 那么在子类上可以通过getAnnotations()可以取到父类用到的该annotation, 否则会取不到, 其他不会影响到
分享到:
相关推荐
《Think In Java 学习笔记》 在Java编程语言中,对象是核心概念,它们代表着程序中的实体和行为。对象具有状态、行为和标识,是现实世界概念在软件中的映射。对象的状态由其内部的属性(或称数据成员)表示,行为则...
### Think in Java 学习笔记知识点总结 #### 第1章:对象导论 - **一切皆为对象**:Java 中的几乎所有事物都是对象,对象通过发送消息的方式进行交互。 - **对象模型**:每个对象都有自己的存储空间,该空间由其他...
通过深入学习《Think in Java》的源码,你可以全面理解和掌握Java编程的核心概念,并能应用到实际项目中。这份源码整理无疑是一个宝贵的资源,对于提升编程技能和理解Java的内在机制非常有帮助。
通过对《Think in Java 3》的学习,读者不仅可以掌握Java语言的基础知识,还能深入理解面向对象编程的思想,提升编程技能和解决问题的能力。这本书适合所有层次的Java开发者,无论你是初学者还是经验丰富的程序员,...
《Think in Java》是Java编程领域的一本经典著作,由Bruce Eckel撰写,深受程序员喜爱。这本书通过深入浅出的方式讲解了Java语言的核心概念和技术,包括面向对象编程、数据结构、算法以及网络编程等多个方面。"Think...
Think in java 源码构建编译
java think in java (英文第四版)至今为止 被认为是java教程之中权威作品之一
《Think in Java》是 Bruce Eckel 的经典著作,它深入浅出地讲解了Java编程语言的核心概念和技术。这本书强调理解编程思想,而不仅仅是学习语法。练习题是学习过程中的重要部分,它们帮助我们巩固理论知识,提升实际...
《Think in Java》读书笔记深度解析 一、构建器(Constructor) 构建器是Java中用于初始化新对象的一种特殊方法,其显著特征是没有返回值类型,包括`void`。这一点与普通方法形成鲜明对比,普通方法即便没有实际...
这本书以其深入浅出的讲解方式和全面的知识覆盖而闻名,被誉为Java学习者的经典读物。中文版的完美高清版本为国内读者提供了便利,使读者能够更好地理解和掌握Java编程的核心概念。 本书主要分为以下几个部分,每个...
think in java 第四版 源码以及作业 eclipse版本 包含jar包 可以直接导入eclipse
《王者归来之Thinking in Java读书笔记》是对Bruce Eckel的经典之作《Thinking in Java》第四版的深度学习与总结。这本书是Java程序员的必备参考书,它深入浅出地阐述了Java语言的核心概念和技术,旨在帮助读者理解...
Think Data Structures in Java 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
理解如何创建和使用类是Java学习的关键。在这一部分,你将学习如何定义类,声明属性,以及编写方法来实现类的功能。 "对象"是Java中的实例化类,每个对象都具有类定义的属性和行为。通过创建对象,你可以让代码模拟...
Think in Java(美)Bruce Eckel 著 陈昊鹏 译 引言 同人类任何语言一样,Java为我们提供了一种表达思想的方式。如操作得当,同其他方式相 比,随着问题变得愈大和愈复杂,这种表达方式的方便性和灵活性会显露无遗。 ...
《Think in Java》是Java编程领域的一本经典著作,由Bruce Eckel撰写,中文版的出现使得更多中国程序员能够深入理解和掌握Java编程语言的核心概念。这本书以其深入浅出的讲解方式,深受程序员们的喜爱,是许多初学者...
《Think in JAVA 编程思想》是Java编程领域的一本经典著作,由Bruce Eckel撰写。第四版作为该书的最新版本,包含了作者对Java语言深入的理解和丰富的编程经验,旨在帮助读者理解面向对象编程的核心理念,并提升编程...
java进阶学习不可不看的一本书。不过这是thinkin java2
think in java 文档