发布时间:2026/8/30 15:35:00
Java 注解真的只是“打个标签”吗? 目录介绍元注解TargetRetentionInheritedRepeatable演示使用介绍注解是什么注解本质上是元数据一种代码级别的注释。用处给类方法接口等添加额外的信息原理使用 interface 定义注解。注解在编译后会成为一种特殊的接口类型并继承 java.lang.annotation.Annotation。注解本质上可以理解为一种特殊的接口。然后通过编译器、JVM 或框架读取并使用这些信息。元注解用来“描述注解的注解”。Target指定注解的使用范围---ElementTypeElementType可以使用的位置举例TYPE类、接口、枚举Service class UserServiceMETHOD方法Override void run()FIELD成员变量Autowired UserService servicePARAMETER方法参数void test(Param String name)CONSTRUCTOR构造方法Inject UserService()LOCAL_VARIABLE局部变量Nullable String namePACKAGE包xxx package com.exampleANNOTATION_TYPE注解给“注解”本身加注解Retention指定注解的保留时期--RetentionPolicyRetentionPolicy保留时期编译后运行时反射SOURCE只保留在源码阶段❌ 编译后丢弃❌ 无法获取CLASS保留到编译后的.class文件✅ 保留❌ 无法获取RUNTIME一直保留到运行阶段✅ 保留✅ 可以通过反射获取和使用Inherited类上的注解是否可以被子类继承Repeatable同一个注解可以使用多次演示使用反射中的Class对象可以获取一个类的各种元信息。前面我们学习到注解属于类的元数据因此我们可以通过Class对象获取这个类上的注解。注解属性在正常情况下只能读取不能在运行时修改。也就是说我们在写代码时就已经pinned。1. 注解定义Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) public interface MyAnnotation { // 定义注解属性 // 1. String属性定义 String myStringMeta() default 今天是2026.8.23,天气非常不错; // 2. 基本类型属性定义 int count() default 23; boolean enable() default true; //... // 3. Class Class? target() default Object.class; // 4. 枚举 Level level() default Level.TOP; }2. 应用到类中的某一方法public class MyTest { MyAnnotation( myStringMeta 这是一个测试, count 24, enable false, target Test.class, level Level.NORMAL ) public void testMethod(){ System.out.println(-----方法体----); } }3. 获取注解并读取属性public class Test { public static void main(String[] args) throws NoSuchMethodException { Method method MyTest.class.getMethod(testMethod); MyAnnotation annotation method.getAnnotation(MyAnnotation.class); System.out.println(annotation.myStringMeta()); System.out.println(annotation.count()); System.out.println(annotation.enable()); System.out.println(annotation.level()); System.out.println(annotation.target()); } }输出这是一个测试24falseNORMALclass com.zzy.annotationdemo.Test演示代码JavaBasic/annotationdemo at main · LuSwordman/JavaBasichttps://github.com/LuSwordman/JavaBasic/tree/main/annotationdemo

相关新闻

2026/8/30 15:35:00

量化概念 14:过拟合与样本外(回测越漂亮,越要警惕)

回测年化 40%,实盘一年后只剩 5%——这种情况在量化里太常见了。问题往往不是策略不好,而是回测本身骗了你:策略在历史数据上过拟合了。 什么是过拟合 过拟合(overfitting),是模型把历史数据里的噪声当成了…

2026/8/30 15:35:00

复制:主从、多主、无主

每台机器只有「部分的真相」。复制是把同一份数据放到多台机器上,让系统在单机挂掉时还能继续服务。 为什么需要复制 单机有物理上限。数据量可能超过单机磁盘,请求量可能超过单机 CPU,还有机器故障、机房断电这些不可抗力。复制把数据拷贝到…

2026/8/30 15:35:00

微信DAT文件加密机制解析与Python批量解密工具实战

简介:这是一款专为微信电脑版用户设计的.dat文件解析工具,面向普通用户与轻度技术爱好者,解决微信本地存储的图片及表情包无法直接查看、导出的痛点。工具可精准提取WeChat Files目录下.dat文件中的原始图像资源,并批量转换为JPG、…

2026/8/30 15:50:02

Rust 实现 PDF 压缩与合并:Presse 命令行工具实战解析

平时整理 PDF 文件时,最烦的就是手里一堆扫描件、合同截图、报表导出文件,既要合并成一个文档,又希望体积别太大。网上在线工具要么限制文件数量,要么压缩后画质糊成一团,要么还得上传到别人的服务器。最近看到一个 Ru…

2026/8/30 15:50:02

STM32N6570-DK部署YOLOv5n自定义目标检测全流程指南

1. 项目概述:为什么我选择在STM32N6570-DK上跑自定义目标检测 这两年边缘AI的热度一直没降过,但说实话,真正能把目标检测模型从PC端搬到MCU级芯片上跑起来的方案并不多。ST推出的STM32N6570-DK是我最近重点折腾的一块板子,它核心优…

2026/8/30 15:50:02

基于Spark ALS的短视频推荐系统搭建与实现

基于Spark的个性化短视频推荐系统,是计算机毕业设计里综合性较强的一类题目。它同时涉及大数据存储、分布式计算、Web 后端和推荐算法,恰好覆盖 Hadoop、Spark、Django、Python 四类技术栈。很多同学拿到题目后的第一反应是去找源码,但源码一…

2026/8/30 15:50:02

告别冷启动:给 AI Agent 建套经验层,从记忆到 ES 日志分析

如果你做过一段时间 AI Agent 应用,大概率见过这个场面:同一个数据源,Agent 每次进入新会话都要重新扫描一遍;同一个查询,上一轮已经算过,下一轮又重新拉全量数据;甚至同一个业务口径&#xff0…

2026/8/30 15:50:02

机器人落地四大坎:从ROS2到PLC的选型、调试与安全部署实战指南

先给结论:机器人产业现在最值得关注的,不是又出了哪款新机器人,而是“从演示到交付”这条路到底卡在哪。样机跑得再快,到了产线、病房、仓库,照样会遇到导航乱窜、点位偏移、通信超时、安全区域设置错误这些问题。这篇…

2026/8/30 15:45:01

STM32的USB为何抢走PA11/PA12?引脚复用与释放技巧全解析

玩 STM32 的人,大概率都撞到过这类怪事:明明代码里没写 USB 相关的初始化,可是 PA11/PA12 这两个引脚就是不听话——接 CAN 收发器时 CAN 报文满天飞乱码,配置成普通 GPIO 输出时电平也拉不动,甚至用示波器一量&#x…

2026/8/30 0:03:35

vSound小提琴数字处理器实操指南:从接线到演出的完整配置

电小提琴或者原声小提琴插电演出,第一个绕不开的坎就是声音难听。原声琴的共鸣和空气感一旦进了拾音器,出来的往往是一坨干瘪、发尖、带着奇怪塑料味的信号。我当初第一次把琴接上乐队调音台,直接被主唱吐槽"你这声音像在锯钢丝"。…

2026/8/30 0:03:35

传感器接口IC如何攻克生物化学传感的微弱信号难题?

1. 从电极到比特流:为什么生物化学传感必须依赖专用接口IC 做生物化学传感的人都有过类似的经历:明明传感器本身性能很好,信号输出却一塌糊涂——噪声大、漂移明显、重复性差,怎么调都达不到预期。很多时候问题并不在传感器&#…

2026/8/30 0:03:35

STM32F411CEU6多通道ADC采集:扫描模式+DMA实现详解

1. 多通道 ADC 的用武之地把“Multichannel ADC”和“STM32F411CEU6”这两个关键字放在一起,其实就是嵌入式开发里最常遇到的一类需求:用一块不算贵的 MCU,同时采集多路模拟信号。STM32F411CEU6 是 48 引脚的 Cortex-M4F 主控,主频…

2026/8/30 0:03:35

vSound小提琴数字处理器实操指南:从接线到演出的完整配置

电小提琴或者原声小提琴插电演出,第一个绕不开的坎就是声音难听。原声琴的共鸣和空气感一旦进了拾音器,出来的往往是一坨干瘪、发尖、带着奇怪塑料味的信号。我当初第一次把琴接上乐队调音台,直接被主唱吐槽"你这声音像在锯钢丝"。…

2026/8/30 0:03:35

传感器接口IC如何攻克生物化学传感的微弱信号难题?

1. 从电极到比特流:为什么生物化学传感必须依赖专用接口IC 做生物化学传感的人都有过类似的经历:明明传感器本身性能很好,信号输出却一塌糊涂——噪声大、漂移明显、重复性差,怎么调都达不到预期。很多时候问题并不在传感器&#…

2026/8/30 0:03:35

STM32F411CEU6多通道ADC采集:扫描模式+DMA实现详解

1. 多通道 ADC 的用武之地把“Multichannel ADC”和“STM32F411CEU6”这两个关键字放在一起,其实就是嵌入式开发里最常遇到的一类需求:用一块不算贵的 MCU,同时采集多路模拟信号。STM32F411CEU6 是 48 引脚的 Cortex-M4F 主控,主频…

2026/8/28 16:16:48

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/28 16:16:50

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/28 11:06:45

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…