为了账号安全,请及时绑定邮箱和手机立即绑定

反射——Java高级开发必须懂的

难度入门
时长 1小时20分
学习人数
综合评分9.70
740人评价 查看评价
9.9 内容实用
9.7 简洁易懂
9.5 逻辑清晰

最赞回答 / 慕沐3571032
个人感觉不是java中的类都是java.lang.Class的对象,而是每一个类都有一个隐藏的属性class,这个属性里封装了该类的所有信息,比如它的字段信息,方法信息等,我们可以通过类名.class或者对象名.getClass()或者Class的静态方法Class.forName()来获取到该隐藏的class属性,进而了解这个类的详细信息。

最赞回答 / jerry4013
因为c3会抛出异常。一个变量的声明一般要写在Try的外面,即使发生的异常,catch 之后的代码也能正常引用c3。catch后面的代码有可能会是检查c3是否为空之类的。总之,声明变量一般要写在try, catch 外面.

最赞回答 / 慕莱坞8174698
args 是 使用 命令行的参数列表 形如:  java  指定的程序名 参数 args[0]即 参数列表的 第一个参数 <...code...>

最新回答 / AcerYyzy
解决了,去获取class type的时候需要使用泛型如:Class<?> b = a.getClass();

最新回答 / 慕的地5111683
试了下,不传参数编译不通过,可以传类对象,也可以传一个null

最新回答 / qq_椭圆的南瓜_03336888
工作以后,业务中用得多,假设现在A单位用户只需要excel2003与word2003这两个类,你在主程序中只有一个类调用,很简单,但B单位用户要求用word2017与excel2017,新增的两个类大部分功能和03版的差不多,但细节方面还有些不同,这时候动态加载就起大作用了,你只用在你主程序调用代码哪里传不同的参数就可以,减少了因代码未修改完全导致业务出来问题等低级bug

最新回答 / 爆米不开花
要用动态加载,你这是静态加载去变异了,寻找不到

已采纳回答 / 伊万诺维奇
这条语句的目的是要取得一个对象,但是通过反射获取到的是Object对象,需要强制转换;<...图片...>关于"接口还有这种操作的吗",不是很懂想问什么

最新回答 / muecho
<...图片...>看看方法的返回值,你的Class对象c1.newInstance()返回的是Object

最新回答 / 给我一个支点丶
// 没有这个方法:field.getTypeName(); // 得到成员变量的类型的类类型Class filedType = filed.getType();String typeName = filedType.getType();// 得到成员变量的名称String filedName = filedType.getName();

最赞回答 / Marksman
比如spring aop,是用jdk动态代理和cglib动态代理实现的,而动态代理就是基于反射机制的,慕课网上有门课叫《探秘Spring Aop》挺不错的可以看看;至于怎么做Java框架。。。先好好学习吧!

最赞回答 / Vince_Lin
转格式,转成gbk,自己百度转格式的步骤
课程须知
童鞋们,学习本课程前需要熟悉Java面向对象的思想,并能掌握Java IO输入输出流、集合和泛型等知识。可参考慕课网Java入门的一、二、三季以及我的文件我做主——Java IO流课程。
老师告诉你能学到什么?
1、能够理解并应用反射机制。 2、能够了解反射机制在集合泛型中的应用。 3、有利于更好的学习框架等Java高级技术。
意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消