zoukankan      html  css  js  c++  java
  • java注解总结-关联信息-关联结构

    java的注解是一种可配置信息;

    这些信息直接依附在功能代码之上;

    * 元注解@Target,@Retention,@Documented,@Inherited 

    * @Target 表示该注解用于什么地方,可能的 ElemenetType 参数包括: 
    * ElemenetType.CONSTRUCTOR 构造器声明 
    * ElemenetType.FIELD 域声明(包括 enum 实例) 
    * ElemenetType.LOCAL_VARIABLE 局部变量声明 
    * ElemenetType.METHOD 方法声明 
    * ElemenetType.PACKAGE 包声明 
    * ElemenetType.PARAMETER 参数声明 
    * ElemenetType.TYPE 类,接口(包括注解类型)或enum声明 

    * @Retention 表示在什么级别保存该注解信息。可选的 RetentionPolicy 参数包括: 
    * RetentionPolicy.SOURCE 注解将被编译器丢弃 
    * RetentionPolicy.CLASS 注解在class文件中可用,但会被VM丢弃 
    * RetentionPolicy.RUNTIME VM将在运行期也保留注释,因此可以通过反射机制读取注解的信息。 

    * @Documented 将此注解包含在 javadoc 中 

    * @Inherited 允许子类继承父类中的注解


    @Target(ElementType.METHOD) 
    @Retention(RetentionPolicy.RUNTIME) 
    @Documented 
    @Inherited

    java注解的使用主要分为三个部分:

    1、注解定义

    @Target(ElementType.FIELD)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    public @interface FruitName {
        String value() default "";
    }
    

    2、注解注入;

        @FruitName("Apple")
        private String appleName;

    3、注解获取、解释、使用;

    FruitName fruitName = (FruitName) field.getAnnotation(FruitName.class);
    strFruitName=strFruitName+fruitName.value();
  • 相关阅读:
    zookeeper简介(二)
    zookeeper简介(一)
    消息队列及常见消息队列介绍
    使用IntelliJ IDEA 和 Maven创建Java Web项目
    Java NIO 缓冲区Buffer(二)缓冲区的创建
    Java NIO 缓冲区Buffer(一)基础学习
    Java NIO使用及原理之--选择器Seclector
    JAVA集合类汇总
    谈谈final、finally、 finalize有什么不同?
    查看SELinux状态:
  • 原文地址:https://www.cnblogs.com/feng9exe/p/9963715.html
Copyright © 2011-2022 走看看