Java 注解

常见的注解

@Override

@Overload

@Deprecated 过时

等.....

/**

*@deprecated {@link #方法名()}提示可替代方法

*/

@Deprecated 

注解类:Annotion,给编译器进行执行

声明注解使用

 @interface,本质也是接口,也可以设置抽象方法,起到属性的作用


package java.lang.annotation;


public enum RetentionPolicy {
   
    SOURCE, //保留到编译时,运行时丢弃

  
    CLASS, //保留到字节码,运行时丢弃

   
    RUNTIME//保留到运行时
}

package java.lang.annotation;


public enum ElementType {

    TYPE,

    FIELD, //变量

    METHOD,//方法

    PARAMETER,//参数

    CONSTRUCTOR,//构造器


    LOCAL_VARIABLE,//本地


    ANNOTATION_TYPE,


    PACKAGE,//包


    TYPE_PARAMETER,

 
    TYPE_USE,

 
    MODULE,


    RECORD_COMPONENT;
}
@interface中 定义的方法可以有 default 修饰,表示不写参数会用默认值, String value();value是定义的方法,使用时可以不写 value = xxx,如果是其他则声明 value = xxx

Inject属于依赖注入,把依赖权交给外部属于依赖注入,比如通过构造器传参也属于依赖注入

getClas().getName() 和 getClass().getCanonicalName() 区别

implementation 如果是别的第三方库引用,则项目中引用不到 需要换成api

你可能感兴趣的:(java,开发语言)