java 程序求助,编译无法通过。
//定义Human类:
class Human
{
String name;
String sex;
int age;
String adr;
void Huamn(String name, String sex, int age, String adr)
{
this.name=name;
this.sex = sex;
this.age=age;
this.adr=adr;
}
void work()
{
System.out.println("I am working"+this.name);
}
void eat()
{
System.out.println("I am eating");
}
}
//测试主程序:
public class Demo
{
public static void main(String[] args)
{
Human zhangsan = new Human("张三","男",23,"北京");
Human lisi;
lisi= new Human("李四","男",12,"南京");
zhangsan.name="张三";
System.out.println(zhangsan.name);
}
}
编译无法通过,如下:
A:\jav>javac Demo.java
Demo.java:6: 错误: 无法将类 Human中的构造器 Human应用到给定类型;
Human zhangsan = new Human("张三","男",23,"北京");
^
需要: 没有参数
找到: String,String,int,String
原因: 实际参数列表和形式参数列表长度不同
Demo.java:8: 错误: 无法将类 Human中的构造器 Human应用到给定类型;
lisi= new Human("李四","男",12,"南京");
^
需要: 没有参数
找到: String,String,int,String
原因: 实际参数列表和形式参数列表长度不同
2 个错误
------解决方案--------------------void Huamn(String name, String sex, int age, String adr) {
名字写错了,Human,然后构造方法不能有返回类型
改成public Human[/color](String name, String sex, int age, String adr) {
------解决方案--------------------
public Human(String name, String sex, int age, String adr) {
this.name = name;
this.sex = sex;
this.age = age;
this.adr = adr;
}
构造函数写错了,不需要返回值,另外Human拼写错了。
------解决方案--------------------初学java要细心
------解决方案--------------------...下个eclipse吧,这错误...
------解决方案--------------------斑竹正解,构造函数没有返回值