Java注解解析(一)

秒懂,Java 注解 (Annotation)你可以这样学 文章开头先引入一处图片。 这处图片引自老罗的博客。为了避免不必要的麻烦,首先声明我个人比较尊敬老罗的。至于为什么放这张图,自然是为本篇博文服务,接下来我自会说明。好了,可以开始今天的博文了。 Annotation 中文译过来就是注解、标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解。 我个人认为,比较糟糕的技术文档主要特征之一就是:用专业名词来... 阅读详情


最近公司要求要懂点后台开发,于是我就去拿了一份后台的源码~~看了一下发现一大堆@XXX的注解。搞不懂什么意思,看上去还能够影响代码的逻辑好腻害~~不明觉厉~~所以笔者就去学了一下java注解~~



JDK中的注解:

一般我们看到的最多的注解就是@Override了吧,在各种实现接口的方法或者重写父类的方法上可以看到。JDK注解有三个:

@Override  在方法上面写着这个注解就意味着该方法一定要实现或者重写父类的方法。
@Deprecated 有该标注的方法表明该方法已经过时不推荐用。
@suppvieswarnings 这个注解用来忽略某个警告  

用法如下:
suppviesWarnings(Deprecated )    ---忽略使用已过期方法的警告

我们看到的比较多的就是这三个注解。
那么除了这三个注解之外还有其它注解:

按照运行机制分类可以分为三类:

1.源码注解  注解自在源码中存在,编译成.class就不存在了,
2.运行时注解   在运行的时候还起作用,甚至还会影响代码的逻辑。
3.编译时注解   编译成.class之后还存在,但是运行的时候就不存在了。


那么我们之前所说的JDK注解是属于这三类的哪一类呢?

通常我们调用某过期的方法,编译的时候编译器会产生警告。如果这个时候你忽略这个警告继续运行,可以看到运行并没有什么问题。所以JDk注解不属于运行时注解,既然在编译之后依然会产生警告说明了JDK注解是编译时注解啦。


除了按照运行机制区分我们还可以按照来源区分

按照来源区分注解也可以分为三类:

1.JDk注解,也就是我们一开始说到的那三个。这里不再多说
2.自定义注解,好吧~~自己定义的注解~~这个后面会说到。
3.第三方注解,其它框架的注解比如Spinner里面的。这类注解也是比较经常用到的。

下一篇会讲述如何自定义注解以及,如何解析自定义注解。



OSMDroid 切换地图不更新的问题 用OSMDroid加载Google地图的时候 需要有按钮切换不同图层的地图,如果发现调用了mMapView.setTileSource(ITileSource aTileSource)方法的时候发现地图View没有更新的话,可能是因为两个实例化TileSource对象其子类BitmapTileSourceBase这个类的aName成员变量值一样导致的地图在setTileSource出现不更新问题,... 阅读详情

相关推荐

华大HC32F460 TCP Server实验

华大HC32F460 TCP Server实验

ZhuoWuKeJi的博客 1270

Java-注解

java注解可以说是java框架的灵魂了

D1842501760的博客 7815

Claude Code启动失败解决方案,执行文件不兼容一键修复

Claude Code命令行工具突然报错,显示"不支持的16位应用程序"。作者排查Node版本无果后,发现是Anthropic更新导致Windows兼容性问题。解决方法很简单:卸载旧版、切换npm镜像源、重装最新版即可恢复。经验教训:遇到类似问题应先搜索社区反馈,避免无谓排查,同时注意npm源使用后及时还原。整个踩坑过程虽折腾,但最终只是简单的重装问题。

1456

注解分类

通过上述的知识学习之后,对自定义注解就会有较好的理解和认识了。 最后归纳一下注解的分类 按照作用域分 根据注解的作用域@Retention,注解分为 RetentionPolicy.SOURCE: Java源文件上的注解 RetentionPolicy.CLASS: Class类文件上的注解 RetentionPolicy.RUNTIME: 运行时的注解 按照来源分

litengbin的博客 1358

使用PlotNeuralNet绘制深度学习网络图的基本操作

使用PlotNeuralNet绘制深度学习网络图的基本操作

weixin_46877907的博客 2110

蜻蜓fm爬虫python

本文介绍了一个用于下载蜻蜓FM音频书籍的Python脚本实现。该脚本主要功能包括:1)通过账号密码登录获取认证信息;2)从目标书籍主页提取版本信息;3)获取书籍节目总数和分页信息;4)生成节目下载链接(使用HMAC-MD5加密算法生成请求签名);5)下载音频文件并保存。脚本采用多种反爬措施:设置User-Agent模拟浏览器行为、使用动态时间戳、HMAC-MD5签名验证等,有效规避简单的反爬机制。整个流程包括登录认证、获取书籍信息、生成下载链接和保存音频文件四个步骤,实现自动化批量下载功能。

野猫炫的博客 912

Java注解

1.注解的作用 通过反射来获取类,方法,成员上的运行时注解信息,实现动态控制程序的执行逻辑 2.注解分类: 按运行状态分类 1) 源码注解:只在源码中存在,在编译后的class中不存在 2)编译时注解:注解在源码和class文件中都存在.Override/deprecate/suppresswarning都是编译时注解 3)运行时注解:在运行时仍然起作用,影响程序的运行逻辑,如spri

厚积薄发 654

基于IC动态加权的机器学习多因子选股策略:从模型融合到实战回测

在量化投资领域,多因子选股模型通过挖掘市场数据中的有效信号来预测股票收益。其核心原理在于利用统计学与机器学习算法,从海量因子中识别出与未来收益具有稳定相关性的特征。这一技术的核心价值在于将主观投资决策转化为系统化、可重复的客观过程,从而在控制风险的前提下追求超额收益。其典型应用场景包括股票阿尔法策略构建、Smart Beta产品设计以及资产配置中的股票筛选环节。本文聚焦于如何通过信息系数(IC)这一关键指标,动态融合Ridge回归、MLP神经网络和随机森林等多个预测模型,构建一个能够自适应市场风格轮动的选股

weixin_34216614的博客 451

Java 注解的分类

1.按照来源分类: 内置注解是java自带的标准注解,在java.lang包下,如: @Deprecated,@Override,@SuppressWarning,@FunctionaInterface,@SafeVarargs; 元注解是可以注解在其他注解上的注解,在java.lang.annotation包下,如: @Retention,@Documented,@Target,@Inherit...

莫非d13 415

杰理JL701N V142的SDK实现双备份自定义OTA教程和代码分享

摘要 本文档详细介绍了基于JL701N SDK的UART OTA升级功能开发方案。该方案采用双备份(Dual Bank)机制,通过串口实现安全可靠的固件远程更新。核心特性包括:1) 双备份升级机制确保升级失败可回滚;2) CRC-16/XMODEM校验保障数据完整性;3) 灵活的传输控制,支持自定义波特率和数据包大小。文档提供了完整的系统架构、API接口说明、通信协议规范以及移植指南,适用于生产烧录、现场升级等多种场景。配套Python升级工具简化了升级流程,使开发人员能够快速实现固件更新功能。

qq_42014563的博客 275

导数与微分在 FPS 射击游戏中的实际应用:把“手感”算出来

摘要:射击游戏开发中,单线程适用于简单小游戏(如单机打靶),所有任务由主线程顺序处理,代码简单但效率较低;多线程则适合复杂场景(如多人在线3D大作),通过渲染、逻辑、网络、音效等线程分工协作,确保画面流畅、响应迅速和实时同步。选择依据取决于游戏复杂度、联网需求和性能要求,小型游戏用单线程,大型高要求项目必须采用多线程架构。(149字)

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 3278

java框架解析注解_【框架基础】:全面解析Java注解(一)

Java注解概述要了解Java注解要先知道Java的反射,反射是运行时获取类的成员,注解也是类的成员,以此达到动态编码的效果,多用在框架,或者使用框架时候添加注解让框架调用。注解定义:注解(Annotation),也叫元数据。Java提供了一种原程序中的元素关联任何信息和任何元数据的途径和方法,一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明...

weixin_33564130的博客 304

【ComfyUI】SD1.5 + ControlNet 边缘检测融合动漫转真人

本文介绍了一个基于ComfyUI的动漫转真人图像生成工作流,通过多模型协同实现高质量的二次元图像转换。该工作流集成了Canny线稿预处理、ControlNet结构控制、VAE编码解码和人脸精细化处理等核心环节,采用majicmixRealistic_v7作为主模型,配合yolov8、SAM等辅助模型。整个流程包含11个标准化步骤,从图像输入、预处理到最终超分输出,通过ControlNet引导和CLIP语义控制确保生成图像的写实感和结构准确性,特别针对人脸区域进行专业优化,最终可输出高分辨率写实人像。

Mr数据杨 1124

Java注解解析--一看就懂的大白话解释

在博客中看到一篇写的非常好的关于Java注解的分析文章,由于看的是转载,并且原文章已经找不到地址了,所以这里只放出转载出处,点击此处。 Annotation 中文译过来就是注解、标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解。 我个人认为,比较糟糕的技术文档主要特征之一就是:用专业名词来介绍专业名词。 比如: Java 注解用于为 Java 代码提供元数据。作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的。Java 注解是从 Ja.

Ricartc的编程梦 988

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

java注释和注解_java_全面解析Java中的注解与注释,注解 一、什么是 Annotation? - phpStudy...

全面解析Java中的注解与注释注解一、什么是 Annotation? (注解 or 注释)Annotation, 准确的翻译应该是 -- 注解。 和注释的作用完全不一样。Annotation 是JDK5.0及以后版本引入的一个特性。 与类、接口、枚举是在同一个层次,可以成为java 的一个类型。语法是以@ 开头简单来说,注释是程序员对源代码的类,方法,属性等做的一些记忆或提示性描述(比如这个方法是...

weixin_39922374的博客 196

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

【框架基础】:全面解析Java注解(一)

Java注解概述        要了解Java注解要先知道Java的反射,反射是运行时获取类的成员,注解也是类的成员,以此达到动态编码的效 果,多用在框架,或者使用框架时候添加注解让框架调用。        注解定义:注解(Annotation),也叫元数据。Java提供了一种原程序中的元素关联任何信息和任何元数据的途 径和方法,一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性

life is wonderful 1918

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

【Spring源码解析】-- Java注解知识回顾(一)

前言 在学习spring注解驱动开发之前,我们先来回顾一下Java的注解相关的知识。 一、注解的定义 直接看代码: /*自定义注解@Book*/ @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE}) @Documented public @interface Book { String name() default...

小虎的博客 306

全面解析java注解

相信有过编程经验的人都见过注解这种东西,也许像我一样,会用、熟练之后,也就一直放那不管了。但是有没有一天突然想到,注解是个什么东西,如果你想到了,那么恭喜你,恭喜你想到了。不论多么复杂的框架、多么复杂的代码、无非是封装、继承、反射、泛型。但是,注解这种东西,是完全独立于java正常体系之外的东西,所以今天在这里一探究竟。 1.java常用注解:@Override(覆盖,覆写),@Deprecat...

weixin_34018202的博客 84

【Java高级】反射学习一——注解

Java注解类型(@Annotation) Java注解是JDK5时引入的新特性,鉴于目前大部分框架(如Spring)都使用了注解简化代码并提高编码的效率,因此掌握并深入理解注解对于一个Java工程师来说是件很有必要的事情。 1. 理解Java注解 实际上Java注解与普通修饰符(pubic, static void等)的使用方式没有多大区别,下面的例子是常见的注解: /** * @author zn * @date 2020/3/30 **/ public interface Animal

骏马逸动,心随你动的博客 327

(一)使用反射机制读取注解信息

一个注解要完整的使用需要三步: 1.定义这个注解本身: package com.zyh.test.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Target(value={ElementType.TYPE}.

u012273935的专栏 217

深入理解Java注解(五大类注解)

这种分类是基于注解的功能和用途来划分的,主要面向开发者理解 Spring 的分层架构和 Bean 定义。第二种分类:基于注解的语法和设计模式这种分类是从注解的编程模型和设计模式的角度来分析的,是一种更加抽象的理解。这种分类是基于注解的结构和使用模式的角度,更加面向语言设计和注解使用的灵活性。两种分类的对比:维度Spring 五大注解分类编程模型注解分类角度功能和用途注解的设计模式和结构关注点注解如何与 Spring 结合使用注解的语言特性及其技术实现代表注解@Service等@Override。

Mikey76的博客 1752

java注解

1.编译期直接扫描:编译器在编译 Java 代码的时候扫描对应的注解并处理,比如某个方法使用@Override 注解,编译器在编译的时候就会检测当前的方法是否重写了父类对应的方法。这个过程是编译器基于自身对 Java 语法规则的理解和实现来完成的,并不涉及运行时反射。2.运行期通过反射处理:像框架中自带的注解(比如 Spring 框架的 @Value、@Component)都是通过反射来进行处理的。

m0_64995001的博客 255

Java的反射注解

//每个类都是Class的对象 第一节:反射 1.1 为什么使用反射:我方定义了一组接口,然后第三方公司按照我方的接口实现了一套功能,然后交给我们,但是我方项目已经结束,如何实现动态加载第三方提供的功能 1.2 什么是反射::反射就是把Java类中的各种成分映射成一个个的Java对象。例如一个类有:成员变量,方法,构造方法,包等信息,利用反射技术可以对一个类进行解剖,把各个组成部分映射成一个个对象...

cui_Myu的博客 233

自定义注解的解析器实现方式?

自定义注解必须有对应的解析逻辑(你说的 “解析器类”),只是实现形式不同:方法 / 类注解常用 AOP 切面作为解析器,字段 / 参数注解常用手动反射解析器;AOP 解析器是 “自动解析”(Spring 拦截方法时触发),手动解析器是 “主动调用”(代码中显式调用解析方法);解析器的核心逻辑都是:通过Annotation反射 API()读取注解属性,再执行业务逻辑。

xiaoye3708的博客 111

Java注解基础概念总结

注解的概念 注解(Annotation),也叫元数据(Metadata),是Java5的新特性,JDK5引入了Metadata很容易的就能够调用Annotations。注解与类、接口、枚举在同一个层次,并可以应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中,用来对这些元素进行说明注释。 注解的语法与定义形式 (1)以@interface关键字定义(2)注解包含成员,成员以无参数的方...

weixin_33714884的博客 70

Spring常用注解(一)

==注解( Annotation)==可以简单的理解为是一种特殊的标签或者注释,将注解加在一些类和方法上面,便可以使这些类和方法具有特殊含义(特定功能)。 Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。 Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件...

思 230
上一篇: Java设计模式之模板
下一篇: Java注解解析(二)
javy_codercoder
博客等级 码龄11年 52粉丝 73原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值