Java学习-注解(一)

注解_概念

/**
 * 注解javadoc演示
 *
 * @author itcat
 * @version 1.0
 * @since 1.5
 */
public class AnnoDemo1 {

    /**
     * 计算两数的和
     * @param a 整数
     * @param b 整数
     * @return 两数的和
     */
    public int add(int a, int b ){
        return a + b;
    }
}

注解_JDK内置注解

import java.util.Date;

/**
 * JDK中预定义的一些注解
 * 		* @Override	:检测被该注解标注的方法是否是继承自父类(接口)的
 * 		* @Deprecated:该注解标注的内容,表示已过时
 * 		* @SuppressWarnings:压制警告
 *
 *
 */

@SuppressWarnings("all")
public class AnnoDemo2 {

    @Override
    public String toString() {
        return super.toString();
    }

    @Deprecated
    public void show1(){
        //有缺陷
    }

    public void show2(){
        //替代show1方法
    }

    public void demo(){
        show1();
        Date date = new Date();
    }
}

注解_自定义注解_格式&本质

import java.util.Date;

/**
 * JDK中预定义的一些注解
 * 		* @Override	:检测被该注解标注的方法是否是继承自父类(接口)的
 * 		* @Deprecated:该注解标注的内容,表示已过时
 * 		* @SuppressWarnings:压制警告
 *
 *
 */

@SuppressWarnings("all")
public class AnnoDemo2 {

    @Override
    public String toString() {
        return super.toString();
    }

    @Deprecated
    public void show1(){
        //有缺陷
    }

    public void show2(){
        //替代show1方法
    }

    public void demo(){
        show1();
        Date date = new Date();
    }
}

注解_自定义注解_属性定义

public @interface MyAnno {

     int value();
    Person per();
    MyAnno2 anno2();
    String[] strs();
     /*String name() default "张三";*/
     /*String show2();

     Person per();
     MyAnno2 anno2();

     String[] strs();*/


}

public @interface MyAnno2 {

}
@MyAnno(value=12,per = Person.P1,anno2 = @MyAnno2,strs="bbb")
@MyAnno3
public class Worker {
    @MyAnno3
    public String name = "aaa";
    @MyAnno3
    public void show(){


    }
}

发布了105 篇原创文章 · 获赞 1 · 访问量 1481

猜你喜欢

转载自blog.csdn.net/qq_44813352/article/details/104595912