这是代码段
public class Square{
private double length;
private double width;
public Square(double a, double b){
length = a;
width = b;
}
public static void main(String args[]){
Square box = new box(3.0,5.0);
}
}
以下是我的问题,Square box = new box(3.0,5.0);
和Square box = new Square(3.0,5.0);
新框(3.0,5.0)假设要调用我没有的框构造函数。但它也会调用Square构造函数。我真的很困惑为什么用这种方式写的也是正确的
答案 0 :(得分:2)
差异是new Square(3.0, 5.0)
有效但new box(3.0, 5.0)
是编译错误。如果它实际上正在为您编译,那么您的项目还必须包含另一个名为box
的类(可能在另一个文件中),您没有将其包含在帖子中。