
java resources是什么?让我们一起来了解一下吧!
JAVA中的一个注解在某种意义上来说,只不过是一种特殊的注释而已,若是没有解析它的代码,它可能连注释都比不上。解析一个类或者方法的注解往往有两种形式,一种是编译期直接的扫描,一种是运行期反射。java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。
java resources是使用java注解的一个机制。

JDK 内置注解的定义:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}“元注解”是用于修饰注解的注解,通常用在注解的定义上,例如:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}JAVA 中有以下四个『元注解』:
1.@Target:注解的作用目标
2.@Retention:注解的生命周期
3.@Documented:注解是否应当被包含在 JavaDoc 文档中
4.@Inherited:是否允许子类继承该注解
实战演练,具体步骤如下所示:
package com.java.api;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**定义注解
* @Target:
表示该注解可以用于什么地方,可能的ElementType参数有:
CONSTRUCTOR:构造器的声明
FIELD:域声明(包括enum实例)
LOCAL_VARIABLE:局部变量声明
METHOD:方法声明
PACKAGE:包声明
PARAMETER:参数声明
TYPE:类、接口(包括注解类型)或enum声明
@Retention
表示需要在什么级别保存该注解信息。可选的RetentionPolicy参数包括:
SOURCE:注解将被编译器丢弃
CLASS:注解在class文件中可用,但会被VM丢弃
RUNTIME:VM将在运行期间保留注解,因此可以通过反射机制读取注解的信息
*
* */
public class UseCase{
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface UseCases{
public String id();
public String description() default "no description";
}
}
package com.java.api;
import com.java.api.UseCase.UseCases;
/**
* 使用注解:
*
* */
public class PasswordUtils {
@UseCases(id="47",description="Passwords must contain at least one numeric")
public boolean validatePassword(String password) {
return (password.matches("\\w*\\d\\w*"));
}
@UseCases(id ="48")
public String encryptPassword(String password) {
return new StringBuilder(password).reverse().toString();
}
}以上就是小编今天的分享了,希望可以帮助到大家。
