public class MyDate{
private int day=12;
private int month=6;
private int year=1900;
public MyDate(int y,int m,int d){
year=y;
month=m;
day=d;
}
void addYear()
{
year++;
}
public void display(){
System.out.println(year+"-"+month+"-"+day);
}
public static void main(String[] args){
MyDate m,n;
m = new MyDate(22,9,2003);
n=m;
n.addYear();
m.display();
n.display();
}
}
n.addYear()为什么结果显示year没加1呢?
还有public MyDate(int y,int m,int d){
year=y;
month=m;
day=d;
这句是不是没用呢?
最后执行的m = new MyDate(22,9,2003);不是上面那个方法啊?如果是的话应该22是年,9是月,2003是日啊,为什么最后还是2003是年呢?public MyDate(int y,int m,int d)不是构造方法吗?
private int day=12;
private int month=6;
private int year=1900;
public MyDate(int y,int m,int d){
year=y;
month=m;
day=d;
}
void addYear()
{
year++;
}
public void display(){
System.out.println(year+"-"+month+"-"+day);
}
public static void main(String[] args){
MyDate m,n;
m = new MyDate(22,9,2003);
n=m;
n.addYear();
m.display();
n.display();
}
}
n.addYear()为什么结果显示year没加1呢?
还有public MyDate(int y,int m,int d){
year=y;
month=m;
day=d;
这句是不是没用呢?
最后执行的m = new MyDate(22,9,2003);不是上面那个方法啊?如果是的话应该22是年,9是月,2003是日啊,为什么最后还是2003是年呢?public MyDate(int y,int m,int d)不是构造方法吗?
解决方案 »
- 算法的问题,为什么布尔变量声明的位置不一样会产生这样的后果?
- Map 集合明明使用了泛型,为什么说我不安全操作,
- Java 怎样在文件中从文件头处查找指定字符串?并显示print出来
- 如何在 javascript 中通过正则表达式来验证用户的输入
- 关于List的问题
- 以后要用java 前辈们帮忙推荐几本好书
- 请问application怎样获取当前目录?
- 散分了!!!到底那个开发工具性价比最好,大家进来讨论!!
- 各位大虾请帮忙!!AWT的问题,一段程序请读一下!(在线等待)
- JAVA 2 SDK 简体中文补充包(又名CJDK1.2)谁用过?如何?
- 同一个包内的两个类为什么无法正常调用?
- 我想写一个简单的个人简历
回答: n=m;这样n和m实际上是同一个对象,n,m相当于对于一个对象的不同的名称,所有
对其中任意一个的操作,都是同样的效果.还有public MyDate(int y,int m,int d){
year=y;
month=m;
day=d;
这句是不是没用呢?
这当然有用了,这是构造函数亚.另外你的 new MyDate(22,9,2003);令人误解.应该是 new MyDate(2003,9,22);吧