日期:2014-05-20  浏览次数:20795 次

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吧,这错误...
------解决方案--------------------
斑竹正解,构造函数没有返回值