这是Oracle Java教程网站的摘录。它不显示实际的.java文件,但我猜“Rectangle”是一个类。但是,如果您注意到,rectOne和rectTwo的参数传递(按值?)是不同的。 (一个有原点变量,两个没有)在Java中,传递值的变量数量是否可以小于对象类中变量的数量?
如果对象具有一定数量的参数,传递值的实际数量是否可以小于那个值?我假设它不能在默认情况下更多。
此外,我搜索的答案,但无法找到。
// Declare and create a point object and two rectangle objects.
Point originOne = new Point(23, 94);
Rectangle rectOne = new Rectangle(originOne, 100, 200);
Rectangle rectTwo = new Rectangle(50, 100);
看起来像Rectangle类指定了多个构造函数。查看其文档 –
构造函数可以被重载,因此您可以拥有多个接受不同数量和类型参数的构造函数。 Java不允许参数的默认值,与其他语言相反,所以必须为每个需要的调用构造一个构造函数。 – Jack
不太确定你的要求,但该示例显示了一个类“Rectangle”被实例化了两次(2个对象 - rectOne,rectTwo),每个构造函数使用不同的构造函数(假设每个都是有效的)。第二个构造函数rectTwo可以假定“origin”(Point对象)的默认值,如果值未在构造函数中传递。 –