当前位置: 代码迷 >> Java相关 >> java构造函数,该如何处理
  详细解决方案

java构造函数,该如何处理

热度:10   发布时间:2016-04-22 20:55:12.0
java构造函数
class person1

{

private String name;

public void fun1()
{
System.out.println(name);
}
public void fun2()
{
person1 a2=new person1("a2");
a2.fun1();
this.fun1();
}
public static void main (String[]args)
{
person1 a1 =new person1("a1");
a1.fun2();
}
}
执行之后说NEW找不到符号
public void fun1(name)
需要标识符,请详细解答一下各位大侠我是新手
有人说是person1类少了这么一个方法:public void person1(String name) {}
可是我不懂怎么弄。
------解决思路----------------------
添加一个构造器: public  person1(String name) {   }这样就可以了。你在person1 a2=new person1("a2");中传入了参数"a2"。   JAVA虚拟机没有找到对应的  构造方法。  你添加一个带一个参数的构造方法就行了。
------解决思路----------------------

class person1

{

private String name;

public  person1(String name){
this.name = name;
}

public void fun1()
{
System.out.println(name);
}
public void fun2()
{
person1 a2=new person1("a2");
a2.fun1();
this.fun1();
}
public static void main (String[]args)
{
person1 a1 =new person1("a1");
a1.fun2();
}
}

------解决思路----------------------
构造方法不同于普通方法,他没有返回值,哪怕是void,如果不写默认有一个空的构造方法public person1(){}(这是你那个类的默认的),你new的时候有传入一个参数,必须要写对于的构造方法,即public person1(String name){},当然,你要接收这个name值才会产生相应作用
  相关解决方案