请教一下面这个JAVA程序到底为什么不能通过编译?

来源:百度知道 编辑:UC知道 时间:2024/05/26 04:52:53
public class Test3{
private int day;
private int month;
private int year;
public void setDay(int d){
day=d;
}
public void setDay(int m){
month=m;
}
public void setDay(int y){
year=y;
}
public int getDay(){
return day;
}
public int getMonth(){
return month;
}
public int getYear(){
return year;
}
public void display(){
System.out.println(day+"-"+month+"-"+year);
}
}

public void setDay(int d){
day=d;
}
public void setDay(int m){
month=m;
}
public void setDay(int y){
year=y;
}
public int getDay(){
return day;
}

这三个方法是同一个方法!!!他们的方法名,参数都相同所以不是重载!把他们三个方法改成不同的名字就行了。。。

Test3这个类,名字应该和你建的名字一样。

编译没问题,不过不能执行,缺少main方法

Test3这个类,名字应该和你建的名字一样。

public void setDay(int d){
day=d;
}
public void setMonth(int m){
month=m;
}
public void setYear(int y){
year=y;
}
貌似你方法名写错了

绝对不可以,你的setday(int d)。。。三个方法名字一样,参数一样,返回类型也一样,这样是不行的。

方法名确实要改,参数类型相同是实现不了重载的。