繁体   English   中英

如何从默认构造函数中调用set方法?

[英]How do you call a set method from a default constructor?

我正在进行一项任务,要求我创建“默认构造函数和第二个构造函数,它要求所有三个值作为参数传递。从两个构造函数中调用”set“方法”我已经完成了第二个构造函数,如下所示;

public Cat(String newName, int newYearOfBirth, int newWieghtInKilos )
{
    setName(newName);
    setYearOfBirth(newYearOfBirth);
    setWeightInKilos(newWieghtInKilos); 
}

如何创建调用set方法的默认构造函数?

空构造函数可以使用具有默认值的setter。

public Cat()
{
    setName(defaultName);
    setYearOfBirth(defaultYearOfBirth);
    setWeightInKilos(defaultWieghtInKilos); 
}

您可以告诉受让人从两个构造函数中调用set方法是错误的做法。 您的默认构造函数可能会愉快地使用带有默认值的参数构造函数。

public Cat(){
    this("",0,0);
}

这将有助于代码重用。

您只需在默认构造函数中设置默认值即可。

public Cat() {
    setName("MyName");
    setYearOfBirth(1987);
    setWeightInKilos(55);
}

或者,您也可以设置空值。

您可以使用与重载构造函数中相同的方式从默认构造函数中调用setter。

这里唯一的区别是,在默认构造函数中,您没有给任何值传递给setter。

但是,如果希望使用默认值初始化这些字段,则可以使用这些默认值调用setter。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM