【发布时间】:2017-03-02 20:17:04
【问题描述】:
在我的 Java 基础课中,我的老师告诉我在为类编写默认构造函数时所做的任何任意选择都需要注释。 (她告诉我们,我们必须为我们设计的每个类创建一个默认构造函数)所以例如,我正在编写一个名为 RoomDimension 的类,我创建了一个默认构造函数,如下所示:
public class RoomDimension {
//Fields
private double length; //Length of a carpet
private double width; //Width of a carpet
/**
*
*/
public RoomDimension(){
length = 0.0;
width = 0.0;
}
我在这里使用 0.0 作为我的标志,表示用户没有输入任何内容或输入无效。然后我应该评论 0.0 被用作文档注释(/**/)中无效输入的指示这一事实吗?我知道如果我使用 -1 作为我的标志(或默认构造函数中字段的初始化),我肯定会评论 -1 表示无效输入,因为我是任意做出的决定。我在问是否必须评论 0,因为我不知道 0 是否是任意选择。作为程序员,您会费心指出这一点吗?或者,如果我只是假设用户知道它而不告诉他们,这可以吗?
【问题讨论】:
-
“她告诉我们,我们必须为我们设计的每个类创建一个默认构造函数” 我简直不敢相信!您的老师应该知道,编译器会为没有显式编写构造函数的类创建默认构造函数。您的示例本身也说明了为什么 just to have one 的默认构造函数是邪恶的:您永远不知道属性中的值是否有效。至少您每次访问它们时都必须进行检查。
标签: java constructor documentation comments default-constructor