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

很简单的程序.为什么会出错呢?
我不知道哪里出错了:我都找晕了向大家求救啦!!!
date.java:25:   class   Date   is   public,   should   be   declared   in   a   file   named   Date.java

public   class   Date
              ^
1   error
上面是出错信息.下面是源程序


class   Date1
{ private   int   year,month,day;
Date1(int   y,int   m,int   d)
{
this.year=y;
this.month=((m> =1)|(m <=12))?m:1;
this.day=((d> =1)|(d <=31))?d:1;
}
public   int   getyear()
{
return   this.year;
}
public   boolean   isLeapYear()
{
return   ((year%400==0)|(year%100!=0)&(year%4==0));
}
void   output()
{
System.out.println(year+ "- "+month+ "- "+day);
}


}

public   class   Date
{
public   static   void   main(String   args[])
{
Date1   a=new   Date1(2007,5,10);
a.output();
System.out.println(a.getyear()+ "is   a   leap   year. "+a.isLeapYear());
}


}

------解决方案--------------------
可能是文件名不一致.你把源文件改名为Date
------解决方案--------------------
把你的java文件命名为:Date.java

注意后缀名是.java,文件名是Date(注意大小写)
------解决方案--------------------
保存的文件名应该定义成 Date.java
与你public类名一致
------解决方案--------------------
date.java:25

文件名保存为Date.java试试
------解决方案--------------------
public 的类名必须和类名一致
------解决方案--------------------
将两个类位置换一下
------解决方案--------------------
很显然是文件的命名要和public声明的一致啊!!!
------解决方案--------------------
Date是关键词,要避免用它来做类名,所以换个类的名字吧
------解决方案--------------------
同意LS的