自定义注解实现
自定义注解格式 java.lang.annotation.Annotation
public @interface 注解名{
修饰符 返回值 属性名() 默认值;
...
}
注解属性支持类型
- 所有基本数据类型
- String类型
- Class类型
- Enum类型
- Annotation类型
- 以上这些类型的数组
package demo.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target({
ElementType.TYPE,ElementType.METHOD}) // 可作用与类、方法上
@Retention(RetentionPolicy.RUNTIME)
public @interface CourseInfoAnnotaton {
// 课程名
public String courseName();
// 课程标签
public String courseTag();
// 课程简介
public String courseProfile();
// 课程序号
public int courseIndex() default 303;
}
package demo.annotation;
import jdk.nashorn.internal.ir.annotations.Reference;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* 自定义注解
* 不能通过implement来继承注解、接口等
*/
@Target