我不明白当您使用构造函数 Rational() 创建 Rational 对象时会发生什么。我的书说它将创建一个值为 0 但在内部存储为 0/1 的 Rational 对象。 this(0) 如何存储为 0/1? num 和 den 0 的实例变量的默认值不是吗?
public class Rational{
public Rational(){
this(0);
}
public Rational(int n){
this(n,1);
}
public Rational(int x, int y){
num = x;
den = y;
}
private int num;
private int den;
}
最佳答案
术语
Rational r = new Rational();
呼吁
public Rational(){
this(0);
}
需要
public Rational(int 0){
this(0,1);
}
需要
public Rational(int 0, int 1){
num = 0;
den = 1;
}
这意味着您的最终对象将是 Rational(0,1);
关于java - 在类中将关键字 this 与多个构造函数一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24013548/