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

关于最后c1.newInstance的疑问

最后如果用newInstance可以创建该类的实例,那么如下代码,我这样创建两个对象,为什么他们不能够比较相等,编译提示cannot be resolved to be  a variable,求助,谢谢

try {

Foo foo=(Foo)c1.newInstance();

} catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

try {

Foo foo2=(Foo)c2.newInstance();

} catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

System.out.println(foo==foo2);


正在回答

1 回答

你先搞清楚局部变量和全局变量,你foo1和foo2都是在try那个括号里面定义的,所以这个变量只在括号里面起作用,出了括号就没了

0 回复 有任何疑惑可以回复我~
#1

飞翔_0022

你把foo1和foo2的定义移到最上面,赋值为null,具体的赋值放到try里面这样就可以了
2017-04-10 回复 有任何疑惑可以回复我~
#2

氧化的灵魂 提问者

谢谢。。
2017-04-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于最后c1.newInstance的疑问

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信