Java SE5内置了3种注解
@Override,表示当前的方法定义将覆盖父类中的方法。
@Deprecated,表示如果程序员使用了注解为它的元素,那么编译器会发出警告信息。
@SuppressWarnings,关闭不当的编译器警告信息。在JSE5中也可以使用这个直接,不过会背忽略不起作用。
定义注解
package prosion.annotations.stady.basics.anntotations;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface SQLInteger {
String name() default "";
Constraints constaunts() default @Constraints;
}
package prosion.annotations.stady.basics.anntotations;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
*生成数据库表
*
*/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface DBTable {
public String name() default "";
}
package prosion.annotations.stady.basics.anntotations;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface SQLString {
int value() default 0;
String name() default "";
Constraints constaunts() default @Constraints;
}
@Target
表示该注解可以应用于什么地方,可能的
ElementType
参数包括:
CONSTRUCTOR
:构造器的声明
FIELD
:域声明(包括
enum
实例)
LOCAL_VARIABLE
:局部变量声明
METHOD
:方法声明
PACKAGE
:包声明
PARAMETER:
参数声明
TYPE
:类,接口(包括注解类型)或者
enum
声明
@Retention
表示在什么级别保存该注解信息,可选的
RetentionPolicy
参数包括
SOURCE
:注解将被编译器丢弃
CLASS
:注解在
class
文件中可用,但会被
vm
丢弃
RUNTIME
:
vm
将在运行期也保留直接,因此可以通过反射机制来读取注解的信息。
@Decumented
将此注解包含在
Javadoc
中
@Interited
允许子类继承父类中的主角诶
注解元素支持的类型:
如果使用支持以外的类型编译器会报错。注意不允许使用任何包装类型
,
元素不能是个不确定的值,就是说要么提供默认值,要么在使用注解时给元素赋值。
所有基本类型(
int,float,boolean
等)
String
Class
Enum
Annotation
使用注解
package prosion.annotations.stady.basics;
import prosion.annotations.stady.basics.anntotations.Constraints;
import prosion.annotations.stady.basics.anntotations.DBTable;
import prosion.annotations.stady.basics.anntotations.SQLInteger;
import prosion.annotations.stady.basics.anntotations.SQLString;
@DBTable(name="Member")
public class Member {
@SQLString(20) String firstName;
@SQLString(50) String lastName;
@SQLInteger Integer age;
@SQLString(value=30,constaunts = @Constraints(primarykey=true))
String handle;
static int memberCount;
public String getHandle(){
return handle;
}
public String getFirstName(){
return firstName;
}
public String getLastName(){
return lastName;
}
public String toString(){
return handle;
}
public Integer getAge(){
return age;
}
}
声明完注解后,需要实现直接处理器才可以使用。如sun公司提供的apt处理器。
分享到:
相关推荐
### Java基础知识小结 #### 1.1 `getPath()`、`getAbsolutePath()`、`getCanonicalPath()`的区别 在Java中,处理文件路径时经常会用到`getPath()`、`getAbsolutePath()`以及`getCanonicalPath()`这三个方法。它们...
【Java开发经验总结】 在Java开发中,良好的编程习惯和高效的设计原则对于代码质量和性能至关重要。以下是一些从编码规范到性能...在实际开发中,不断学习和总结,持续优化代码,是成为一个优秀Java开发者的必经之路。
这个“java课程小结.rar_北京理工大学JAVA课程”压缩包中包含的“课程小结”文件,很可能是教授精心编写的教学精华,旨在帮助学生巩固所学知识并为后续学习打下坚实基础。 在Java课程中,有几个核心概念和技术是必...
Java自定义注解用法实例小结 Java 自定义注解是 Java 中的一种元数据标记,可以添加到类、方法、变量、参数等元素上,提供了关于这些元素的元数据信息。自定义注解可以是公共的也可以是私有的,公共的自定义注解...
### Java技巧小结荟萃 #### Javadoc API 文件产生器 Javadoc 是一款非常重要的工具,主要用于生成文档,能够从源代码注释中提取出有用的文档信息。这不仅有助于提高代码的可读性,还方便其他开发人员快速理解类、...
在Java开发中,Spring...开发者可以根据应用需求选择合适的方式,从XML配置到注解注入,再到基于Java的配置,Spring都提供了全面的支持。理解这些获取Bean的方法及其背后的概念,对于高效地使用Spring框架至关重要。
Java反射机制是Java编程语言中一个强大的工具,它允许程序在运行时动态地获取类的信息并操作类的对象。反射机制的核心在于java.lang.reflect包中的API,主要包括Class类、Constructor类、Method类和Field类。以下是...
在JSP中嵌入Java代码时需要注意两个小例外:一是为了与JSP的特殊符号区分,需要使用转义字符`或`%>`来包围Java代码;二是JSP注释虽然在编辑页面中可见,但不会出现在生成的HTML文档中,而是使用`和`--%>`来标识。 ...
3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...
3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...
(3)使用my eclipse /Eclipse编写程序4、程序编码时,必须严格遵守java程序标识符的一般约定,并要加适量的注释。5、系统基本能运行,程序结构合理层次清晰6、各种技术的综合应用7、在myeclipse/Eclipse中的控制台...
EJB (Enterprise JavaBeans) 3.0 是Java EE平台的一部分,它引入了大量的注解,以简化企业级组件的开发。以下是对EJB 3.0中一些关键注解的详细解释: 1. **@Id**:这个注解用于标记实体类的一个属性作为主键。它...
在Java EE(Enterprise Edition)平台上实现Web服务是一个...总的来说,这个小结是Java EE Web服务开发的一个全面指南,涵盖了从基础概念到高级应用的各个方面,对于学习和理解Java EE平台上的Web服务开发非常有帮助。
该系统不仅适合本科课程设计、毕业设计的需求,同时也是Java学习者掌握SSM框架及办公管理系统开发实践的理想之选。 该系统通过Java语言与SSM框架的结合,实现了员工信息管理、任务管理、文档管理、日程安排等基础...
### 小结 通过系统地学习上述书籍,Java初学者将能够建立起全面而深入的知识体系。这些书籍不仅仅是理论知识的堆砌,更重要的是提供了大量实用的代码示例和案例分析,有助于读者更好地理解和掌握Java语言的特点。...
#### 小结 本章介绍了Java的基础知识,包括Java的特点、运行机制、开发环境的搭建、注释的使用、标识符的规则、变量的概念及分类等。这些内容对于Java初学者来说至关重要,是学习Java编程的第一步。接下来的章节将...
#### 四、小结 对于Java初学者而言,熟悉并掌握上述提到的关键技术和工具至关重要。通过系统地学习JDK、深入理解JDK文档、熟练操作常用的应用服务器,可以为成为一名合格的Java开发者打下坚实的基础。此外,持续...
学生提问:老师,我想学习Java编程,到底是学习Eclipse好呢,还是学习JBuilder好呢? 21 1.9 本章小结 22 本章练习 22 第2章 理解面向对象 23 2.1 面向对象 24 2.1.1 结构化程序设计简介 24 2.1.2 程序的三种...
+ 和 += 3.14 使用操作符时常犯的错误 3.15 类型转换操作符 3.15.1 截尾和舍入 3.15.2提升 3.16 Java没有“sizeof” 3.17 操作符小结 3.18 总结 第4章 控制执行流程 4.1 true和false 4.2 if-else 4.3 迭代 4.3.1 do-...