A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Person1
{

public static void main(String[] args)
{
  System.out.println("main");
}
    public static void show(y[] args)
{
  for(y x:args)
  {
   System.out.println(x);
  }
}
}//建立一个Person1类
import java.lang.reflect.*;
class Person1Demo
{
public static void main(String[] args)throws Exception
{
  Person1 p=new Person1();
  Class clazz=Class.forName("Person1");
  Method show=clazz.getMethod("show",y[].class);
  show.invoke(null,(Object)new y[]{"22","3e","44"});----------1
}
}
上面的程序是实现Person1类show方法的反射.看了方老师在视频中讲解数组对于可变参数传值时我总感觉不大好理解,我通过程序总结了一下。
如果类型y是基本变量时1处前可以不用加Object,但如果是引用型变量时则必须按照方老师那样说的来:前面加Object。为什么会是这样了
顺便说下大家有没有好的总结啊,有的话写在上面吧。

评分

参与人数 1技术分 +1 收起 理由
杨志 + 1

查看全部评分

1 个回复

倒序浏览
基本类型的一维数组可以被当作Object类型使用,不能当作Object[]类型使用,非基本数据类型的一维数组,既可以当作Object使用,也可以当作Object[]使用
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马