builder模式优点在于可以简化对象赋值的过程,也可以在设计类的时候,设置哪些属性必须赋值,哪些不是必须赋值的,代码如下:

public class PathOBJ {private String path_input = "";private String path_output = "";private String run_sign = "";public PathOBJ(Build build) {this.path_input = build.path_input;this.path_output = build.path_output;this.run_sign = build.run_sign;}public static class Build {private String path_input = "";private String path_output = "";private String run_sign = "";public Build setPath_input(String path_input) {this.path_input = path_input;return this;}public Build setPath_output(String path_output) {this.path_output = path_output;return this;}public Build setRun_sign(String run_sign) {this.run_sign = run_sign;return this;}public PathOBJ create() {return new PathOBJ(this);}}
}

也可以设置get方法,便于后期获取属性,或者修改pathOBJ类属性的访问修饰符。

Builder模式创建pojo类相关推荐

  1. 使用Builder模式创建复杂可选参数对象

    在新建对象时,若需要对大量可选参数进行赋值,最常见的做法是JavaBeans模式,即调用一个无参构造方法创建对象,然后调用setter方法来设置每个必要的参数,以及每个相关的可选参数.代码示例如下: ...

  2. Android设计模式之——Builder模式

    一.介绍 Builder模式是一步一步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下,可以更精细的控制对象的构造流程.该模式是为了将构建复杂对象的过程和它的部件解耦,使得构建过程 ...

  3. 火遍全网的Hutool,如何使用Builder模式构建线程池

    前言 Builder 设计模式也叫做 构建者模式或者建造者模式,名字只是一种叫法,当聊起三种名称的时候知道是怎么回事就行 Builder 设计模式在作者编码过程中,属于比较常用的模式之一.优秀的设计模 ...

  4. Java设计模式之Builder模式

    Java设计模式之Builder模式 Java设计模式之Builder模式 简介 适用性 用LOL的出装备的顺序为例 基本实现代码 BasePerson的实现 DeMaXiYa的实现 QiTianDa ...

  5. 二、抽象层的Builder模式

    Builder模式非常适合类层次结构. 使用平行层次的builder,每个嵌套在相应的类中. 抽象类有抽象的builder; 具体的类有具体的builder. 例如,考虑代表各种比萨饼的根层次结构的抽 ...

  6. effective java之 builder模式

    在java开发中我们经常需要创建对象 ,我们常用的创建对象的方法有两种  1  使用构造器来创建对象 如果有多个可变参数 ,就需要写多个构造方法,这种方法在遇到多个参数时不好控制 2. javabea ...

  7. 针对POJO类get、set方法的单元测试覆盖

    有的项目需要单元测试覆盖率的行数达到一定的比例,通常情况下POJO类基本仅仅只是get.set方法,但又占据一大部分的代码行数,通过以下方法可以节省一部分的劳动力. 首先POJO类get.set方法不 ...

  8. 创建型模式之Builder模式

    1.意图 将一个复杂对象的创建与它的表示分享,使得同样的构建过程可以创建不同的表示. 2.适用性 (1)当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时 (2)当构造过程必须允许被构 ...

  9. Idea 类builder模式插件安装方法

    builder 模式的代码 手写的话不是不可能,字段多了 就恶心了,下面就会看到,长话短说,IEDA 安装 builder 插件 首先Idea  快捷键Ctrl +alt+s  打开preferenc ...

  10. 11. 对象创建模式之 Builder模式(构建器)(不常用)

    1. 动机 在软件系统中,有时候面临着"一个"复杂对象"的创建工作,其通常由各个部分的子对象用一定的算法构成:由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化, ...

最新文章

  1. const在函数声明中的应用(转)
  2. python【力扣LeetCode算法题库】820- 单词的压缩编码
  3. 使用echart的雷达图的时候,如果文字越界的解决办法记录,标签文字自动换行
  4. 深度学习在遥感图像目标检测中的应用综述
  5. Asp.net MVC3.0 基于不同的角色显示不同的菜单
  6. Angular 7和.NET Core 2.2——全球天气(第3部分)
  7. Web后端学习笔记 Flask(1)基础知识
  8. mysql 性能优化 20 条建议
  9. [转载] 利用Python构建股票交易策略 !
  10. retainAll用法
  11. 如果在Flutter Web项目中使用lottie动画
  12. 钢琴自学app开发(原生代码)
  13. 故障分析 | MySQL 8.0 解决连接满问题
  14. “开宝五子棋读谱”软件的隐私政策和权限说明
  15. Mac配置item2高亮颜色
  16. 那么浙江大学软件工程专业复试考试内容有哪些
  17. Ubuntu下配置、训练YOLO的全过程——无人机检测小系统
  18. AndroidSDK开发6我用kotlin协程写了一个简单sdk
  19. python爬虫爬当当网_爬虫实战一:爬取当当网所有 Python 书籍
  20. 看片显示服务器不稳定,无限“看片”,资源随便下,这回爽了!

热门文章

  1. WIN8 RP版频繁死机
  2. 【Widevine L1】MTK平台基于Trustonic TEE方案widevine keybox异常log
  3. mysql api百度云盘_利用百度云盘API上传文件至百度云盘
  4. jeb 导出java_[原创] JEB2插件,导出APK资源文件
  5. JTAG各类接口针脚定义及含义
  6. iOS13.4系统来袭CarPlay更好用,安卓微信内侧7.0.13支持黑暗模式了,附下载地址...
  7. TCP 和 UDP 有什么区别?
  8. USB 协议分析(含基本协议和 USB 请求和设备枚举)
  9. matlab画图常用函数image、imagesc、imshow区别
  10. vmware安装macos