class Date
{
private int year;
private int month;
private int day;
public Date(int y, int m, int d) //构造方法
{
year = y;
month = m;
day = d;
}
public void setDate(int y, int m, int d)//设置日期值
{
year = y;
month = m;
day = d;
}
public int getyear()
{
return year;
}
public int getMonth()
{
return month;
}
public int getday()
{
return day;
}
public void Print() //输出日期值
{
System.out.println("date is
"+year+'-'+month+'-'+day);
}
public boolean isLeapYear() //判断是否为闰年
{
return (year%400==0) | (year%100!=0) &
(year%4==0);
}
}
public class Jpro3_11
{
public static void main (String args[])
{
Date a = new Date (2010,10,1);
a.Print();
if(a.isLeapYear())
System.out.println(a.getYear()+"是闰
年");
else
System.out.println(a.getYear()+"不是
闰年");
}
}
找不到符号???红色的部分!
public int getyear()定义是的这个,而你写的是a.getYear()
java?什么找不到符号?不是能调试么?单步调试呗。
这是写在一个class里面的?
Date a = new Date (2010,10,1);错了 不能这样实例化对象
main 下面的你是使用的getYear 但是Date中是全小写getyear
return (year%400==0) | (year%100!=0) &(year%4==0);这个位置是 错的 &&并且 你那个 是为按位与的符号
经测试 该此位置程序正确,还有if else 如果不加大括号 下面只能写一行,估计你是排版问题,建议加上大括号,程序可读性更强,亲 该给分啦
呜呜呜 没分啊
还有 类取名字的时候不要用这样的名字,上面那个说的也对,getYear错误,估计你new的是java.util.Date
class Date
{
private int year;
private int month;
private int day;
public Date(int y, int m, int d) //构造方法
{
year = y;
month = m;
day = d;
}
public void setDate(int y, int m, int d)//设置日期值
{
year = y;
month = m;
day = d;
}
public int getyear()
{
return year;
}
public int getmonth()//m小写
{
return month;
}
public int getday()
{
return day;
}
public void Print() //输出日期值
{
System.out.println("date is"+year+"-"+month+"-"+day);//-为双引号
}
public boolean isLeapYear() //判断是否为闰年
{
return (year%400==0) | (year%100!=0) &(year%4==0);
}
}
public class Jpro3_11
{
public static void main (String args[])
{
Date a = new Date (2010,10,1);
a.Print();
if(a.isLeapYear())
System.out.println(a.getyear()+"是闰年");// year为小写
else
System.out.println(a.getyear()+"不是闰年");// year为小写
}
}