[求助]程序没问题,只是对其中两句话的运行不理解
只是对后边注释的部分的运行原理(引用赋值)不理解,请高手指点public class Date1 //声明类
{
int year,mouth,day; //成员变量,年月日
void setDate(int y,int m,int d) //成员方法,设置日期值,没有返回值void
//有三个参数
{
year=y;
mouth=m;
day=d;
}
boolean isLeapYear() //成员方法,第一个字的首字母小写,其余首字母大写
{ //返回布尔值,无参数
return(year%400==0)||(year%100!=0)&&(year%4==0); //判断是否为闰年
}
void print() //输出日期值,无参数 无返回值
{
System.out.println("date is "+year+"-"+mouth+"-"+day);
}
public static void main(String args[])
{
Date1 aday=new Date1(); //创建一个对象aday
aday.setDate(2006,1,28); //调用方法setDate
aday.print(); //将方法的值输出 联系23行
/*Date1 tomorrow=aday; //对象引用赋值
tomorrow.year=2007; 计算2007年 如何赋值的??*/
System.out.println(aday.year+"is a leap year,"+aday.isLeapYear());
}
}
搜索更多相关的解决方案:
运行
----------------解决方案--------------------------------------------------------
没什么技术在里面,只是tomorrow是定义成当前类的类型,而当前类有year这个数据成员,所以可以写成tomorrow.year=2007,因为year是定义成整型而不是日期,所以将2007赋值给tomorrow.year不会出错,这是正常的
----------------解决方案--------------------------------------------------------
谢了
----------------解决方案--------------------------------------------------------