首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

effective java 原则二:遇到多个构造器参数时考虑用

2024-12-20 来源:化拓教育网

原则二:遇到多个构造器参数时考虑用建造者模式(构建器)

  • 多个构造器参数的缺点:
    • 产生多个构造器方法,随着参数的增加而增加
    • 参数填写顺序错误难以检查,当多个参数的类型一样时容易写错
  • 替代方案之一:JavaBean模式
    • 大量的setter是分开调用,在构建过程中javabean可能处于不一致的状态,此时调用可能产生错误
    • 无法对成员变量做成final
  • 推荐方案:建造者模式
    • 可避免填写顺序出错
    • 不会出现不一致性问题
    • 成员变量可final
    • 可在build()调用时检查参数有效性,也可在setter时检查
    • 可以自动填充某些域,如每次创建对象自动增加序列号
  • 建造者模式的缺点:
    • 每次创建实例都要先创建一个builder
  • 总结:在使用构造器或者静态工厂方法时考虑建造者模式,衡量参数的个数,以及未来的拓展,如果参数较多、未来可能增加参数,那么使用建造者,后期维护容易些。
显示全文