注解_自定义

 

注解_java_02

注解_自定义_03

如下面的demo

package 注解;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@SuppressWarnings("all")//表明可以修饰类
public class demo01 {
@Override//要重写的方法,不重写要报错的,注解本身也是个类
public String toString() {
return "";
}
@Deprecated//表示被抛弃的方法
public static void test001() {
System.out.println("123");
}
@SuppressWarnings("all")
public static void test002() {
List list1=new ArrayList();
List list2=new ArrayList();
}
@SuppressWarnings("all")
public static void main(String[] args) {
Date a=new Date();

a.parse("123");//被抛弃的方法,可以用@Deprecated来压制
test001();
}
}

注解_默认值_04

注解_默认值_05

注解_默认值_06

注解_默认值_07

注解_默认值_08

//下面是自定义注解的一个demo
package 注解;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;public class MyAnnonation {
@Target(value= {ElementType.METHOD,ElementType.TYPE})//指定该使用域为方法和类型
@Retention(RetentionPolicy.RUNTIME)//表示运行时有效
public @interface myann{//@intereface来声明自定义域
ElementType [] value(); //ElementType []表示参数类型 value表示参数名
}
@Target(value= ElementType.METHOD)//指定该使用域为方法
public @interface myann1{//@intereface来声明自定义域
String value() default "";// default ""表示赋的值,是String类型和前面的类型一致
int age() default 0;
int age1() default -1;//表示不存在的含义
String [] schools() default {"清华大学","河南大学"};//这些都是注解的默认值,如果使用时不声明则使用该默认值
}
}

测试注解demo

package 注解;
import 注解.MyAnnonation.myann1;
public class TestMyAnnation {
@myann1(age=19,age1=20,schools= {"南京大学","郑州大学"})//注解方法,自己可指定参数
public void test(){

}
}

 下面是注解知识点的框图

注解_默认值_09

 

作者:你的雷哥

本文版权归作者所有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。