黑马程序员技术交流社区
标题:
关于张孝祥老师反射的调用main方法问题
[打印本页]
作者:
mmakun
时间:
2015-5-27 17:25
标题:
关于张孝祥老师反射的调用main方法问题
这个视频中有一个知识点,说是main方法接收的参数是一个String数组 ,而直接反射的时候放一个数组是不能通过 的,前面加上(Object)就可以 了,但加上这个之后强转为Object了,怎么为main方法所识别 呢?还是不明白。
作者:
马也keyboard
时间:
2015-5-29 17:07
视频中有两种方法来获取传入的String[]对象
之所以要进行强制转换是因为invoke()方法兼容了JDK1.5和JDK1.4两个版本,而这两个版本的参数有所不同,
JDK1.5
版本中传入的是多个Object对象,而
JDK1.4
版本传入的是一个数组对象,数组内传递所有参数
因此,在向invoke()传入参数时,为了避免编译器把String[]对象当做jdk1.4版本的参数对待,所以使用(Object)进行强制转换。
同样也可以用new Object[]{new String[]{}}来帮助编译器区分
作者:
mmakun
时间:
2015-5-29 21:16
马也keyboard 发表于 2015-5-29 17:07
视频中有两种方法来获取传入的String[]对象
之所以要进行强制转换是因为invoke()方法兼容了JDK1.5和JDK1.4 ...
明白了,多谢了啊!
作者:
hejin67410
时间:
2015-9-22 22:05
谢谢分享
作者:
hejin67410
时间:
2015-9-22 22:08
谢谢分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2