本文是《Java中注解学习系列教程》第三篇文章
在前两篇中我们学习了注解的定义、JDK内置注解、注解分类及自定义注解的写法。
本文咱们将学习:
1:自定义注解一些说明
2:自定义注解怎么使用
3:怎么解析自定义注解
一:自定义注解一些说明:
自定义注解的时候,内部成员可被允许的类型又有哪些呢?
1:基本类型(Java中8中基本类型)
2:stirng类型
3:class
4:其他注解
5:枚举类
6:以上五类的数组
如下图:
Java官方文档(https://docs.oracle.com/javase/specs/jls/se8/html/jls-9.html#jls-9.6.1)原文如下:
类型举例:
需要说明的:
1:如果注解只有一个成员时候,成员名称必须为value
2:注解类可以没有成员,没有成员的注解为:标识注解
二:自定义注解的使用
说明:自定义注解根据其使用范围使用。
如MyAnnotation1这个自定义注解
使用范围是是method和field上。
我们就在method的使用该注解:
语法是:
注解名称(成员名称 = 成员值,成员名称2 = 成员值2)
如下图:
三:注解解析
在使用注解的时候,使用的反射处理的。
public class MyAnnotation1Test { public static void main(String[] args) { try { //1:使用类加载器加载类 Class clazz = Class.forName("MyAnnotation1PoJo"); //2:在对于的类上是否存在对于注解 //获取方法上是否有注解 for(Method method : clazz.getMethods()){ boolean isMothExistMyAnnotation1 = method.isAnnotationPresent(MyAnnotation1.class); if(isMothExistMyAnnotation1){ //3:如果存在。就获取 MyAnnotation1 myAnnotation1 = (MyAnnotation1)method.getDeclaredAnnotation(MyAnnotation1.class); System.out.println("==>:方法"+method.getName()+"有注解。值为:"+myAnnotation1.value()); }else{ System.out.println("==>:方法"+method.getName()+"无注解"); } } }catch (Exception e){ e.printStackTrace(); } } }
注:关于反射方面的学习。在后期,凯哥也会出相应的学习教程。
我们查看运行后的结果:
可以正常解析出自定义注解的值。
下节预告:在下一节中,凯哥将通过自定义注解实现excel的导出功能
声明:本文由凯哥Java系列教程中Java注解讲解第三篇文章。
本文出处:http://www.kaigejava.com/article/detail/441
凯哥博客:www.kaigejava.com
凯哥公众号:凯哥Java(kaigejava)
相关推荐
"双有源桥DAB变换器的MPC模型预测控制:快速响应与动态性能优势",双有源桥DAB变器的mpc模型预测控制 与传统电压闭环PI控制方式相比,mpc动态响应更好。 仿真中分别测试了启动过程,负载突变过程(0.2s开始),参考电压突变(0.4s开始),mpc均表现出很好的快速响应特性。 运行环境为matlab simulink ,双有源桥DAB变换器; MPC模型预测控制; 动态响应; 快速响应特性; MATLAB Simulink仿真。,双有源桥DAB变换器:MPC模型预测控制与PI电压闭环对比研究
房屋中介管理系统的设计与实现(论文+源码)_kaic
"简单质量添加单层与多层熔覆模拟:含三维质量源项、移动高斯热源及自定义编程与仿真教程",简单质量添加单层以及多层。 里面包含简单的三维质量源项以及移动高斯热源,并且可以进行多层熔覆模拟,包含完整的仿真模型以及自定义编程代码和讲解视频 ,核心关键词:简单质量;单层多层;三维质量源项;移动高斯热源;多层熔覆模拟;完整仿真模型;自定义编程代码;讲解视频。,"三维质量源项与多层熔覆模拟:含单层及多层添加技术,附完整仿真模型与自定义编程教程"
光储并网直流微电网仿真模型:实现MPPT与高效能量管理策略,文献支持,并网质量优良,光储并网直流微电网仿真模型(matlab simulink,2018),包含: 1.MPPT模块,实现光伏输入最大功率跟踪; 2.储能电池模块; 3.超级电容模块; 控制策略简介: 糸统使用二阶低通滤波法对光伏输出功率进行抑制,通过设置不同截止频率,高频功率给超级电容响应,中频给蓄电池响应,低频功率馈入电网,并网THDi小于5%,母线电压稳定,并网质量良好;有对应文献; ,核心关键词: 光储并网直流微电网仿真模型; MPPT模块; 储能电池模块; 超级电容模块; 二阶低通滤波法; 功率跟踪; 光伏输出; 母线电压稳定; 并网THDi; 控制策略。,"基于二阶低通滤波法的光储并网直流微电网仿真模型研究"
C#多线程全自动工控上位机源码编程:替代触摸屏,强大功能,自由通信与设定,控件全赠送,支持西门子PLC与数据库链接,C#全自动多线程上位机源码编程 0,纯源代码。 1,替代传统plc搭载的触摸屏。 2,工控屏幕一体机直接和plc通信。 3,功能强大,多级页签。 4,可以自由设定串口或以太网通信。 5,主页。 6,报警页。 7,手动调试页。 8,参数设定页。 9,历史查询页。 10,系统设定页。 11, 赠送所有控件。 12,使用的西门子Plc。 13,注册opcdaauto.dll组件,用于使用opc。 15,安装kepserverEx5。 16,可以链接其他数据库。 ,C#; 全自动多线程; 上位机源码编程; 纯源代码; PLC替代; 工控屏幕一体机; PLC通信; 功能强大; 多级页签; 通信方式设定; 主页; 报警页; 手动调试页; 参数设定页; 历史查询页; 系统设定页; 控件赠送; 西门子Plc; 注册opcda组件; 链接数据库。,C#多线程上位机源码:PLC替代的工控屏幕一体机编程解决方案
Matlab Simulink单相Boost整流Boost PFC电路仿真:文档解析与公式解释,Matlab simulink开关电源PFC电路仿真 单相整流+boost ,功率因数电路仿真。 有文档,公式解释。 ,核心关键词:Matlab; Simulink; 开关电源; PFC电路; 单相整流; boost电路; 功率因数电路仿真; 文档; 公式解释。,"Matlab Simulink仿真:单相整流Boost PFC电路功率因数提升研究"
"基于comsol模拟的凝固组织模型分析与研究",comsol凝固组织模型 ,Comsol凝固; 凝固组织; 数值模拟模型; 材料组织; 微观结构模型; 仿真分析; 关键参数。,"COMSOL凝固过程组织模型研究"
棒板电极电晕放电模型与电场仿真:击穿电压检测、等离子体及粒子追踪模块深度解析,棒板电极空气电晕放电模型 等离子体模块 针板电极 棒板电极 平板电极击穿电压检测模型+电场仿真模型 粒子追踪模块 静电场或者静电场 电击穿模块 ,核心关键词:棒板电极; 空气电晕放电模型; 等离子体模块; 击穿电压检测模型; 电场仿真模型; 粒子追踪模块; 静电场; 电击穿模块。,"棒板电极电晕放电模型与等离子体模块研究:电场仿真与粒子追踪分析"
1、文件内容:GConf2-devel-3.2.6-8.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/GConf2-devel-3.2.6-8.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
该截屏软件支持鼠标智能捕获组件区域。 代码: https://github.com/LeoLei8060/QSnapCraft https://gitee.com/leolei8060/QSnapCraft
基于正负序分离策略的不平衡电网整流与逆变电路Simulink仿真研究,不平衡电网的整流电路或逆变电路Simulink仿真。 交流电网三相电网不平衡,整流电路直流侧会产生二倍频率分量,逆变电路使得交流电网存在负序分量;通过正负序分离的方式分别确定正负序给定的电流内环参考值,来抑制对应的分量。 附带参考文献 ,不平衡电网;整流电路;逆变电路;Simulink仿真;三相电网不平衡;二倍频率分量;负序分量;正负序分离;电流内环参考值。,Simulink仿真研究:不平衡电网中整流与逆变电路的优化控制策略
COMSOL周期性结构多极子展开:透射谱计算与可视化输出分析,comsol周期性结构多极子展开。 包含透射谱计算,多极子分解(可导出数据用其他软件绘制也可comsol直接出图) ,comsol;周期性结构;多极子展开;透射谱计算;多极子分解;数据导出,COMSOL周期性结构多极子展开:透射谱计算与多极子分解可视化
17. CH374_STM32F103_SPI(HW) HOST CH340.zip
vim快捷键壁纸adobe illustrator自制
基于微信小程序的酒水订购系统(论文+源码)_kaic.zip
永磁同步电机FOC矢量控制模型的SIMULINK仿真及模块公式解析,精准跟踪目标转速并实现马鞍波形输入与反电动势正弦波输出。,永磁同步电机FOC矢量控制模型,SIMULINK仿真模型,可以很好的跟踪目标转速。 其中模型中各个模块均有公式解析 可以实现马鞍波形输入,反电动势正弦波输出。 ,核心关键词:永磁同步电机;FOC矢量控制模型;SIMULINK仿真模型;目标转速跟踪;模块公式解析;马鞍波形输入;反电动势正弦波输出。,永磁同步电机FOC矢量控制模型:SIMULINK仿真与马鞍波形正弦波输出研究
IGWO-RF算法的优化改进及多特征回归预测的实践应用——基于MATLAB环境下的可视化效果展示,IGWO-RF多特征回归,基于改进灰狼算法(IGWO)优化随机森林(RF)数据回归预测 改进点:两个点 初始化改进收敛因子改进 1、运行环境要求MATLAB版本为2018b及其以上 2、评价指标包括:R2、MAE、MBE、RMSE等,图很多,符合您的需要 3、代码中文注释清晰,质量极高 4、测试数据集,可以直接运行源程序。 适合新手小白 ,核心关键词:IGWO-RF多特征回归; 改进灰狼算法; 随机森林; 数据回归预测; 初始化; 收敛因子改进; MATLAB 2018b; 评价指标; R2; MAE; MBE; RMSE; 代码中文注释; 测试数据集; 新手小白。,基于IGWO-RF优化的多特征回归算法:改进收敛因子与初始化方法解析
".NET Core MVC在线考试系统源码:基于EF Core与Vue的考试管理系统,支持中英双语切换,含全套源码与文档,适配VS2019及以上版本与SQL Server数据库",.net core mvc在线考试系统asp.net考试系统源码考试管理系统 主要技术: 基于.net core mvc架构和sql server数据库,数据库访问采用EF core code first,前端采用vue.js和bootstrap。 功能模块: 系统包括前台和后台两个部分,分三种角色登录。 管理员登录后台,拥有科目管理,题库管理,考试管理,成绩管理,用户管理等功能。 教师登录后台,可进行题库管理,考试管理和成绩管理。 用户登录前台,可查看考试列表,参加考试,查看已考试的结果,修改密码等。 系统实现了国际化,支持中英两种语言。 源码打包: 包含全套源码,数据库文件,需求分析和代码说明文档。 运行环境: 运行需vs2019或者以上版本,sql server2012或者以上版本。 ,.net core mvc; asp.net考试系统源码; 考试管理系统; EF core code firs
distribute_crawler-master.zip
"基于OpenCVSharp的智能视觉工具集:含缩放旋转形状模板匹配与自定义直线卡尺控件,全源码可直接导入项目使用",基于opencvsharp的视觉工具,包括基于形状的模板匹配(支持缩放以及旋转)、直线卡尺工具(包含自定义卡尺控件),可直接导入项目使用,其他功能正在开发中。 具体效果如图所示,整套源码。 ,基于OpenCVSharp的视觉工具; 形状模板匹配(支持缩放旋转); 直线卡尺工具(含自定义卡尺控件); 导入项目使用; 整套源码。,OpenCVSharp视觉工具集:支持缩放旋转模板匹配与自定义卡尺功能