package package3;

import java.lang.annotation.ElementType;

import java.lang.annotation.Retention;

import java.lang.annotation.RetentionPolicy;

import java.lang.annotation.Target;

//注解的注解

@Retention(RetentionPolicy.RUNTIME)

//表示注解试用的范围,此处是表示只用到变量上

@Target(ElementType.FIELD)

public @interface MyAnnotation {

String value() default ""; //注解的属性

}

package package3;

import java.lang.reflect.Field;

public class MyTest {

@MyAnnotation("zhangsna")

String s;

public static void main(String[] args) throws SecurityException, NoSuchFieldException {

Class clazz = MyTest.class;

Field fl = clazz.getDeclaredField("s");

//得到属性的注解

MyAnnotation mn = fl.getAnnotation(MyAnnotation.class);

System.out.println(mn.value());//得到注解的属性

}

}

java 注解学习_java注解的学习相关推荐

  1. Java注解 编译_Java注解处理器学习之编译时处理的注解详析

    1. 一些基本概念 在开始之前,我们需要声明一件重要的事情是:我们不是在讨论在运行时通过反射机制运行处理的注解,而是在讨论在编译时处理的注解. 编译时注解跟运行时注解到底区别在什么地方?其实说大也不大 ...

  2. java uv实例_Java注解的实际应用案例讲解

    前言 注解确实是一个很强大的功能,是的开发效率大幅度提高.在Android开发中,比较有名气的注解框架当属:Butterknife.https://github.com/JakeWharton/but ...

  3. java注解类型_Java注解类型

    本篇文章帮大家学习java注解类型,包含了Java注解类型使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. 标记注解类型 标记注解类型是没有元素的注解类型,甚至没有默认值. ...

  4. java 注释 过时_Java 注解

    前言 为什么需要学习注解? 1.能够灵活地使用框架提供的注解,最后能够读懂框架的源码 2.能够配合反射将代码书写更加的灵活,更加易于维护易于扩展,Properties配置,XML配置,注解配置[Jav ...

  5. java 自定义注解 教程_Java注解教程及自定义注解

    Java注解提供了关于代码的一些信息,但并不直接作用于它所注解的代码内容.在这个教程当中,我们将学习Java的注解,如何定制注解,注解的使用以及如何通过反射解析注解. Java1.5引入了注解,当前许 ...

  6. java 反射 注解 运用_Java注解与反射的使用

    打开 Eclipse,新建 Java 项目"注解与反射",在 src 下右键并建立包 "注解与反射",在包下右键并建立 Annotation (注解)文件,名称 ...

  7. java注解机制_Java 注解机制

    一.注解中的信息已经在Class中了,我们应该如何读取出来 1 java.lang.reflect.AnnotatedElement接口:2 3 publicAnnotation[] getAnnot ...

  8. Java注解库_Java 注解详解

    本文部分摘自 On Java 8 基本语法 注解是 Java 5 所引入的众多语言变化之一,是附加在代码中的一些元信息,用于一些工具在编译.运行时进行解析和使用,起到说明.配置的功能.注解不会也不能影 ...

  9. java注解编程_java 注解 基本原理 编程实现

    java 1.5开始引入了注解和反射,正确的来说注解是反射的一部分,没有反射,注解无法正常使用,但离开注解,反射依旧可以使用,因此来说, 反射的定义应该包含注解才合理一些.当然,这只是个人想法,至于j ...

最新文章

  1. mysql 创建库 5.7_MySQL数据库之MySQL5.7创建用户时报错
  2. stdio.h: C++输入输出操作
  3. ITK:基本区域增长
  4. 初识MQ--mq常见技术介绍
  5. 约瑟夫问题的学习(基于循环链表)以及基于循环数组
  6. 从特殊到一般-C#中的类
  7. 如何检测C语言中的内存漏洞(leak)?
  8. ReactNative入门之android与rn初始化参数的传递
  9. Jenkins任务优先分配到原来的执行节点上
  10. EOJ 306 树上问题
  11. mybatis #与$区别
  12. freeswitch安装1.6
  13. 解读BOLT引擎例子——HelloBolt2
  14. Pyinstaller 打包Pyside2 报错qt.qpa.plugin
  15. 思科CCNP认证介绍
  16. MD5,SHA1,SHA256,NTLM,LM等Hash在线破解网站收集
  17. 正在摧毁协议处理器_8种不良习惯正在摧毁您的电脑
  18. 服务器信号满格网速很慢,网速变得很慢(wifi信号满格但网速慢)
  19. python模拟勒索病毒
  20. RFC5869翻译 HMAC-based Extract-and-Expand Key Derivation Function (HKDF)

热门文章

  1. laravel框架总结(十一) -- 集合
  2. Tsung MQTT协议简介及MQTT xml文档配置介绍
  3. 10.图的深度优先遍历序列是否唯一?为什么?
  4. 新京报快评:浙大设“新生高额奖学金”,为何就成了“抢生源”?
  5. 为什么 Python被Google选为TensorFlow的开发语言呢?使用 Python比C++语言进行机器学习有什么优势?
  6. 深入理解计算机系统:网络编程 上
  7. 小波变换在语音信号处理的应用
  8. Labview-浅谈Labview中VISA的设计
  9. 使用Elasticsearch+filebeat+logstach+kibana构建日志服务平台
  10. linux运维初学作业,Linux运维班第二次作业(示例代码)