首页 > 编程语言 > 详细

java注释使用示例

时间:2019-10-18 00:09:12      阅读:54      评论:0      收藏:0      [点我收藏+]

举例说明java注解的使用:设置非空注解,当属性未进行赋值时,给出错误提示。

简单实体类:

package com.test.annotation;

public class Person {
    @NotNullAnnotation
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "Person [name=" + name + "]";
    }

}

注解定义:

package com.test.annotation;

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

@Retention(RUNTIME)
@Target(FIELD)
public @interface NotNullAnnotation {

}

使用示例:

package com.test.annotation;

import java.lang.annotation.Annotation;
import java.lang.reflect.Field;

public class Demo {

    public static void main(String[] args) throws Exception {

        Person person = new Person();
        //person.setName("hello");
        Class clazz = person.getClass();
        Field field = clazz.getDeclaredField("name");
        field.setAccessible(true);
        Annotation[] annotations = field.getAnnotations();
        for (Annotation annotation : annotations) {
            if (annotation.annotationType().equals(NotNullAnnotation.class)) {
                if (field.get(person) == null) {
                    System.out.println("name不能为空");
                }else {
                    System.out.println(field.get(person));
                }
            }
        }
    }

}

运行结果:

name不能为空

当放开//person.setName("hello");注释以后的运行结果:

hello

后续跟进spring中的注解解析机制。

java注释使用示例

原文:https://www.cnblogs.com/silenceshining/p/11695776.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!