为什么需要建造者模式?

不直接创建对象, 而通过 建造者模式 来间接创建 (引入创建中间层), 在创建所需对象时, 将 初始化参数 传递给建造者, 这样做的好处有:

  • 避免无效状态 (比如未完全 set() 好所有字段)
  • 在创建所需对象前就可以对 初始化参数 进行校验/定制化