Java的注解和元注解
2021/9/4 22:07:35
本文主要是介绍Java的注解和元注解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Java的注解和元注解
- 注解
- 范围:
- 保持
- 元注解
注解
定义:
可以对java中的某一段程序进行说明和标注,并且这个注解的信息可以被其他程序使用特定的方式读取到,从而完成相应的操作。
格式:
- 没有属性的注解:
public @interface 注解名称{ }
- 有属性,但没默认值的注解
public @interface 注解名称{ public 类型 属性名(); }
- 有属性有默认值的注解
public @interface 注解名称{ 属性类型 属性名称() default 默认值; }
类型默认为public 可以省略不写
范围:
- TYPE 使用在类、接口、注解、枚举等类型上
@Test public class A{ }
- 使用在属性上面
// FIELD 全局变量使用注解 public class A{ @Test private String a; } // LOCAL_VARIABLE 局部变量使用注解 public class A{ public void say(){ @Test int num = -2;ss } }
- 方法上面
// METHOD 在方法上面 public class A{ @Test public void say(){ } } // CONSTRUCTOR 在构造方法上面 public class A{ @Test public A(){ } } // PARAMETER 方法参数上面使用 public class A{ public void say(@Test String name){ } }
- ANNOTATION_TYPE 在注解类型上面
@Test public @interface A{ }
- PACKAGE 使用在包上面
@Test package com.learnjava.demo;
保持
- SOURCE:注解只保留在源文件,当java文件编译成class文件的时候,注解被遗弃
- CLASS:注解被保留到Class文件,但jvm加载class文件时候被遗弃
- RUNTIME:注解不仅保留到class文件中,jvm加载class文件之后,仍然存在。
元注解
自定义注解时候,一般会使用到元注解。
- @Target,用于描述注解的使用范围,例如用在类上面还是方法上面
- @Retention,用于描述注解的保存策略,是保留到源代码中、Class文件中、还是加载到内存中
- @Documented,用于描述该注解将会被javadoc生产到API文档中
- @Inherited,用于表示某个被标注的类型是被继承的,如果一个使用了@Inherited修饰的annotation 类型被用于一个class,则这个annotation将被用于该class的子类。
这篇关于Java的注解和元注解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南