有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java最好将实例变量赋值给某个值,而不是在构造函数中声明

我有一个类USER,它有带有默认值的实例变量。如下文所示

public class User{
   private String username="";
   private String password = "";
   private Boolean isValidUser = true;
   private Boolean email = "sample@gmail.com"
  ........ 
}

现在我改变了我的班级,就像

public class User{
       private String username;
       private String password;
       private Boolean isValidUser;
       private Boolean email
      ........ 

      public User(){
         email = "sample@gmail.com";
         isValidUser = true;
         .......
      }
  }

我认为在构造函数中保留这些默认值是一种很好的做法

我知道这是个愚蠢的问题,但我想知道你的看法


共 (1) 个答案

  1. # 1 楼答案

    关键是,你不会“边走边上课”。类的精确设计只是整个设计中的一个小方面

    <^ >来自{a1}(域驱动设计),首先要考虑的是您打算构建的<强>模型< /强>。含义:您正在创建一个用户类,用于在系统中为用户建模。这意味着您(以及所有参与该项目的其他人员)需要非常清楚地了解“用户”到底是什么

    示例:您的字段似乎都不是最终的。但我非常确定:在任何合理的用户模型中,用户都会拥有某些属性,永远不会改变;例如,一个特定的用户id,另一方面;将一些“默认”电子邮件地址分配给新用户似乎是非常错误的;并声明这些用户是“有效的”。恰恰相反

    我所说的本质是:您应该首先关注创建一个一致的模型。然后,当您真正理解系统对“用户对象”做了什么以及这些用户拥有哪些属性时;然后,您将研究许多可能的模式,如何在以后实际创建此类对象

    您的方法是通过实现的细节来定义系统。正如我所说的,这不是一个好主意