黑马程序员技术交流社区
标题:
使用反射的方式,调用构造函数初始化的问题[已解决]
[打印本页]
作者:
陈嘉宾
时间:
2012-6-11 18:06
标题:
使用反射的方式,调用构造函数初始化的问题[已解决]
本帖最后由 陈嘉宾 于 2012-6-11 18:32 编辑
编译过不去了。。提示无法从静态上引用非静态方法。哪位高手帮我看看。。谢谢
class fanshe
{
public static void main(String[] args) throws Exception
{
Person obj= Person.class.getConstructor (String.class,int.class).
newInstance("xp",18);
System.out.println(Person.getName()+Person.getAge());
}
}
class Person
{
private String name;
private int age;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name=name;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age=age;
}
public Person(){}
public Person(String name,int age){
this.name=name;
this.age=age;
}
}
作者:
赵兵锋
时间:
2012-6-11 18:12
第4行:
System.out.println(Person.getName() + Person.getAge());类名.成员名,这样是在访问类的静态成员,这里应该是
System.out.println(obj.getName() + obj.getAge());
另外Person里的getName和getAge方法里有错误,应该是返回成员变量name和age。
复制代码
作者:
陈嘉宾
时间:
2012-6-11 18:18
哦哦尴尬。。谢谢没注意
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2