这篇文章主要介绍了Java注解怎么自定义和使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java注解怎么自定义和使用文章都会有所收获,下面我们一起来看看吧。注解叫元数据,一种代码级别的说明,它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举在同一个层次,它可以声明在包、类、字段、局部变量、方法参数等的前面,用来对这些元素进行说明、注释。注解的作用分类编写文档:通过代码里表示的元数据生成文档【生成doc文档】代码分析:通过代码里表示的元数据进行分析【使用反射】编译检查:通过代码里表示的元数据让编译器能够实现基本的编译检查【Override】注解按照运行机制分类源码注解:注解只在源码中存在,编译成.class文件之后就不存在了编译时注解:注解在源码存在的基础上,也会在.class文件中存在,但是在运行阶段中就不存在了,例如:@Override运行时注解:注解在运行阶段依然存在,且能够影响程序的运行过程,例如:@Autowired(1)注解:用于描述代码,说明程序,主要目的是为了给计算机看,且能够影响程序的运行。(2)注释:用于描述代码的作用和一些关键性的知识点,使用文字描述程序,是为了给程序员观看,以此来使程序员能够以最快的时间了解被注释的代码。@Override:检测该注解标记的方法是否继承自父类;@Deprecated:说明被标记的内容已过时,暗示着在不久之后可能会被更新抹除;@SuppressWarnings:压制警告,就是被标记的部分不会产生警告,常用的参数:@SuppressWarnings(“all”);@SafeVarargs:参数安全类型注解,它的目的就是提醒开发者不要用参数做一些不安全的操作,它的存在会阻止编译器产生unchecked这样的警告;元注解:用于描述注解的注解,在创建注解时使用1. @Target属性值:ElementType.TYPE:能修饰类、接口或枚举类型ElementType.METHOD:能修饰方法ElementType.FIELD: 能修饰成员变量ElementType.PARAMETER:能修饰参数ElementType.CONSTRUCTOR:能够修饰构造器ElementType.ANNOTATION_TYPE:能够修饰注解ElementType.PACKAGE:能够修饰包ElementType.LOCAL_VARIABLE:能够修饰局部变量2.@Retention属性值:RetentionPolicy.SOURCE:注解只在源码中存在,编译成class之后就没了RetentionPolicy.CLASS:注解在源码和class中都存在,运行时就没了,这个是Retention的默认值RetentionPolicy.RUNTIME: 注解在源码、class、运行时都存在,如果要使用反射一定要定义为这种类型3.@Documented:该注解的作用就是表示此注解标记的注解可以包含到javadoc文件中去
4.@Inherited:描述注解是否能够被子类所继承1.格式:2.注解本质:注解的本质上就是一个接口,该接口默认继承Annotation3.属性:接口中可以定义的内容(成员方法、抽象方法)属性的返回值:八种基本数据类型字符串类、接口、枚举注解以上类型的数组属性赋值注意事项如果定义属性时,使用default关键字给属性默认初始化值,则使用注解时,就可以不进行属性的赋值,否则都必须给属性赋值如果只有一个属性需要赋值的话,并且属性的名称是value,则使用注解给属性赋值时,value可以省略,直接定义值就可以了数组赋值时,值需要使用{}包裹,如果数组中只有一个值,则{}可以省略不写自定义注解annotation使用以上注解的类TestAnnotation两个方法:类对象调用 isAnnotationPresent(Class extends An免费云主机域名notation> annotationClass)
判断是否应用了某个注解通过getAnnotation()方法获取Annotation对象,或者getAnnotations()方法获取所有应用在该类上的注解1.创建自定义注解2.创建实体类3.创建测试类,测试注解关于“Java注解怎么自定义和使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Java注解怎么自定义和使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注百云主机行业资讯频道。
小编给大家分享一下pytorch 中nn.Dropout怎么使用,相信大部分免费云主机域名人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!示例代码如上,直接调用nn.Dropout即可,但是注意在…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。