游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

关于Java反射的一点代码

  一、背景
  最近又看了下java反射的一些东西,所以简单汇总记录一下。二、关于java反射2。1、什么是java反射
  反射是一种动态获取信息及调用对象的一种机制。
  对于一个在运行中的java类,我们都可以知道它的所有属性和方法。
  对于一个在运行状态中的对象,我们也都能通过反射来调用它的任意方法已经属性的调用及改变2。2、什么情况下会用到反射
  一般来说我们在日常开发中直接用到反射的地方不多,它更多用于框架的开发
  不能明确接口调用的是哪个函数,需要根据传入参数再运行时决定。
  不能明确传入函数的参数类型,但是又需要再运行时处理任意对象2。3、反射给我们提供了那些支持
  Class。forName(StringclassName):返回给定字符串名称的类或接口的相关类对象
  getDeclaredConstructors():返回一个数组,包含类的公共构造函数
  getConstructor(Classlt;?,paremeterTypes):返回指定反射类的指定入参类型的构造函数
  getDeclaredMethos():返回一个数组,包含反射类的所有公共、保护、私有、默认方法(不包括继承的方法)
  getDeclaredFields():返回一个数组,包含反射类的所有字段属性
  getDeclaredField(StringfieldName):返回反射类指定名称的字段属性
  getMethods():返回一个数组,包含反射类的公共方法,包含继承的方法
  getMethod(Stringname,Classlt;?,paremeteraTypes):返回反射类指定的公共成员方法
  PS:更多信息,请参考官方文档。三、代码示例DatapublicclassPerson{privateStringname;privateintage;publicPerson(){System。out。println(我是默认构造方法,我被调用了!);}publicPerson(Stringname,intage){System。out。println(有参构造姓名为:name年龄为:age);}}
  importcom。example。easyexcel。model。Person;importjava。lang。reflect。Constructor;importjava。lang。reflect。Field;importjava。lang。reflect。InvocationTargetException;publicclassTest{publicstaticvoidmain(Stringargs〔〕)throwsIllegalArgumentException,IllegalAccessException,ClassNotFoundException,NoSuchMethodException,InvocationTargetException,InstantiationException,NoSuchFieldException{System。out。println(通过反射调用类的默认构造方法);ClasspersonClass。forName(com。example。easyexcel。model。Person);Constructorconstructorperson。getConstructor(null);constructor。newInstance(null);System。out。println(通过反射调用类的有参构造方法);Constructorconstructor1person。getConstructor(String。class,int。class);constructor1。newInstance(XiaoMing,19);System。out。println();PersonbeannewPerson();bean。setName(ZZSS);Field〔〕fieldsbean。getClass()。getDeclaredFields();Fieldfieldbean。getClass()。getDeclaredField(name);field。setAccessible(true);ObjectobjectNamefield。get(bean);System。out。println(获取指定字段name的值为:objectName);System。out。println();for(inti0;ifields。length;i){FieldfieldTmpfields〔i〕;设置属性是可以访问的fieldTmp。setAccessible(true);得到此属性的值ObjectvalTmpfieldTmp。get(bean);StringtypefieldTmp。getType()。toString();System。out。println(字段类型为:type);System。out。println(属性名:fieldTmp。getName());System。out。println(属性值:valTmp);System。out。println();得到此属性的类型if(type。endsWith(String)){给属性设值fieldTmp。set(bean,LFG);}elseif(type。endsWith(int)type。endsWith(Integer)){给属性设值fieldTmp。set(bean,121);}}System。out。println(重新设值后的对象属性为:bean。getName()bean。getAge());}}
  Java
  程序输出如下:
  通过反射调用类的默认构造方法
  我是默认构造方法,我被调用了!
  通过反射调用类的有参构造方法
  有参构造姓名为:XiaoMing年龄为:19
  我是默认构造方法,我被调用了!
  获取指定字段name的值为:ZZSS
  字段类型为:classjava。lang。String
  属性名:name
  属性值:ZZSS
  字段类型为:int
  属性名:age
  属性值:0
  重新设值后的对象属性为:LFG121
  四、日志模块中部分代码示例privatevoidsaveSysLog(ProceedingJoinPointjoinPoint,longtime){MethodSignaturesignature(MethodSignature)joinPoint。getSignature();Methodmethodsignature。getMethod();SysLogEntitysysLognewSysLogEntity();SysLogsyslogmethod。getAnnotation(SysLog。class);if(syslog!null){注解上的描述sysLog。setOperation(syslog。value());}请求的方法名StringclassNamejoinPoint。getTarget()。getClass()。getName();StringmethodNamesignature。getName();sysLog。setMethod(className。methodName());请求的参数Object〔〕argsjoinPoint。getArgs();try{StringparamsnewGson()。toJson(args〔0〕);sysLog。setParams(params);}catch(Exceptione){}获取requestHttpServletRequestrequestHttpContextUtils。getHttpServletRequest();设置IP地址sysLog。setIp(IPUtils。getIpAddr(request));sysLogApi。saveLog(sysLog);}
  Java
  PS:可以参见:Springboot自定义注解日志管理实现

怎么把图片上的字转成可编辑的文字?写完了这个回答,有好多网友留言,推荐了几个好的工具,现在我一并整理出来,希望对有缘看到这个帖子的人有帮助。现在这个时代是要求效率的时代,那怕是付费的。生活节奏的加快,让每个人都……新一代iPhoneSE爆料汇总搭载A15有望成为手游神机苹果iPhoneSE系列一直有小钢炮之称,与同为小屏的苹果mini系列相比,苹果iPhoneSE系列价格更加低廉,而苹果mini系列配置相对更加强劲,这也让小屏用户难以抉择。……2020年中国协作机器人行业市场现状与竞争格局分析协作机器人是一种被设计成能与人类在共同工作空间中进行近距离互动的机器人。协作机器人是工业机器人的一类,顾名思义是指用于同人类工人一起协作。一、2019年我国协作机器人市场……用iQOONeo3拍了几张照片,突然觉得单反就不香了!如果一部小小的手机就能帮你拍出好照片,你还会带着笨重的专业相机吗?iQOONeo3就是这样一款在摄影方面很有门道的手机,该机有着4800万像素主镜头、800万像素超广角镜头、2……美国非农数据超预期,对黄金美股经济影响几何美国11月非农就业人数新增26。6万,远超预期19。0万,且录得10个月新高,失业率由上月3。6变为3。5,触及近几十年低位,2019年失业率一直保持在4。0以下,时薪也有小幅……业界智能机器人主流分类与代表产品一、工业机器人指工业自动化中使用的、固定式或移动式、具有三轴及三轴以上可重复编程、多用途的自动控制操作机以及工厂用AGV运输车。1。1人机协作机器人适用于柔性……荣耀X20参数大全荣耀X20(6GB128GB5G版)价格:1899元上市时间:2021年08月12日屏幕尺寸:6。67英寸分辨率:23761080屏幕占比:94。……京东618战报18日京东超市干货食品母婴酒类全面爆发增长6月18日零点,2021京东61818周年庆步入狂欢高潮。开场3分钟,京东超市整体成交额同比增长超10倍。开场仅2分钟,干货食品成交额破3亿,母婴品类总成交额破2亿;开场5分钟……共享单车成为一种新公害共享单车提供了便利性的同时,也成为一种公害,这个公害的最大思想就是浪费。同时,基于共享单车的这种思想商业模式也浓缩成一个基本资本市场思维模式:一边提供便利性服务,一……iPhone13,真的十三香吗?智慧的老板随着苹果秋季发布会临近网上关于新iPhone的爆料自然也多了起来iPhone13(或12s)系列汇总了一下,给大家瞅瞅Pro版本有望支持……海能达俄面临断网,应急通讯是否获利好?1、事件驱动:22年3月2日讯,俄罗斯准备启用本土互联网以应对网络威胁,海能达与俄罗斯主要几家电信运营商有合作。2、金融战后的网络战。近期黑客频繁对俄发动网络攻击,俄政府……鸿蒙新一轮内测招募开始了,华为荣耀老设备福利来了新一轮HarmonyOS2版本内测招募正式开启。新一轮鸿蒙内测涉及畅享9s、10、20,麦芒8,荣耀8x、10青春版、20青春版、20i以及play3等9款机型。本次,华……
世嘉游戏发布会上的新媒体设备,用的居然是国产6寸小电脑在GPDMicroPC诞生之初,我们一直将其定义为工程师专用便携调试电脑,因为MicroPC仅6寸屏幕的机身,以及拥有丰富的实用型接口,比如RS232、HDMI、RJ45网口,……荣耀20S定格夜色之美后4G时代荣耀出货新担当9月4日荣耀最强自拍手机荣耀20S在武汉发布。在性能方面,荣耀20S搭载7nm制程工艺麒麟810芯片、3750mAh大电池,配备20W快充,MagicUI智慧系统加持多项底层创……赴港上市进军新房交易领域,安居客真能一口吃成大胖子?作者:财经小法师原创:财经小锄头时隔7年安居客出征资本市场,姚劲波再次手撕贝壳。强势推出爱房和巧房新业务线,安居客誓要与贝壳一较高下。房地产服务平台一超多强格局真的……跨境收款平台哪个好?东方汇通还是很一流的,可以一对一,并且非常便捷,去应用宝或者官网都可以下载。这要看你们需求了,不同平台优势不同。比如PayPal市场占有率最大,有上亿的用户在使用,……一机多能小狗T12ProRinse擦地吸尘器开箱作为创业者的我,最近刚为团队找到一个新的办公地点,由于预算有限选了一个地处偏远但是面积很大的场所,像是个studio,既用来办公,又用作团队成员的宿舍,扫地机作为标配……经纪商FXTM与FPMarkets被大马证监会列入黑名单2月3日,马来西亚金融管理机构证券委员会(SC)在其官网和官方社交媒体上发布新一轮投资警告,将10家投资主体列入警告黑名单,其中包括零售外汇及差价合约经纪商OctaFX、FXT……realme2022年01月31日新消息realmerealme2022年01月31日新消息这三款手机价格不超1000元用两年不是问题都是百元神机realme真我GT2到底值不值得新年入……中国已经有了北斗卫星导航系统,为什么手机上用的还是GPS?北斗定位系统属于全球导航定位系统(GNSS)的一部分,目前比较成熟的大型全球定位系统有我们熟知的gps和后来的俄罗斯glonass,欧盟的galileo目前还不太成熟。就……10万出头的广汽埃安Y性价比满满还是低价有套路?两年前,广汽新能源AIONS上市,在当时来说是纯电轿车产品中看上去比较有竞争力的一台,和几何A相比入门价更低,各方面指标更强,于是详细做了一下对比,发现AIONS的车型配置设计……飞象星球创始人李鑫人工智能可为基础教育高质量发展提供重要助力十四五时期,我国教育进入高质量发展阶段。面对新阶段和新形势,人工智能等信息技术或将成为重要推动力,对基础教育赋能,推动教育变革创新。人工智能推动各领域加快变革和创新……为什么你的创业公司应该运行在Kubernetes上从2019年初开始,就有不少创业公司陆陆续续向我咨询Kubernetes等云原生技术。我总是会问这些创业公司的部署流程是怎样的,因为这能让我大概了解到一个公司的技术复杂度……什么样的电磁炉值得买?这台电磁炉告诉你前言:最近家里的燃气灶有点不好使了,点火时有一定几率自动熄火,想换个灶台又遭到爸妈集体反对这燃气灶又不是不能用,无非多打几次火罢了,燃气灶也轮不到你用几次。正有志于提升厨……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网