美文网首页
建造者模式学习札记

建造者模式学习札记

作者: HDZ_0f75 | 来源:发表于2021-01-23 22:38 被阅读0次

1.什么是建造者模式?

2.为何要使用建造者模式?

平时开发中,创建一个对象常用的方式是,使用new关键字调用类的构造函数来完成,但存在以下情况任意一种,这种方式就不适用了,我们就需要考虑建造者模式了..

我们把类的必填属性放在构造函数中,强制创建对象的时候就设置.如果必填的属性有很多,把这些都设置到构造函数中设置,那构造函数就会出现参数列表很长的问题.如果我们把必填属性通过set()方法设置,就会存在校验这些必填属性是否填写的逻辑无处安放.

如果类的属性之间有一定的依赖关系或者约束条件,我们继续使用构造函数+set()方法的设计思路,那这些依赖关系或约束条件的校验逻辑就无处安放了.

如果我们希望创建不可变对象,也就是说,对象创建好之后,就不能修改内部的属性值,要实现这个功能,我们就不能在类中暴露set()方法,构造函数+set()方法来设置属性值的方式就不适用了.

3.建造者模式与工厂模式的区别有哪些?

工厂模式是用来创建不同但是相关类型的对象(继承同一父类或者接口的一组子类),由给定的参数决定创建哪种类型的对象.(类比根据不同的参数是生产轿车还是卡车还是其他车).

建造者模式是用来创建一种类型的复杂对象,通过设置不同的可选参数,"定制化"地创建对象.(类比生产某一种车的高中低配).

4.建造者模式的实现方式

把构造函数定义为private,定义public static class Builder 内部类(或者将Builder类设计成独立的类),通过Builder 类的set方法设置属性,调用build方法创建对象。

demo

相关文章

  • 建造者模式学习札记

    1.什么是建造者模式? 2.为何要使用建造者模式? 平时开发中,创建一个对象常用的方式是,使用new关键字调用类的...

  • Builder Pattern in Java

    建造者模式:建造者模式定义建造者模式应用场景实现案例Jdk中的建造者模式建造者模式的优点建造者模式的缺点 建造者模...

  • 设计模式(4) 建造者模式

    什么是建造者模式 经典建造者模式的优缺点 对建造者模式的扩展 什么是建造者模式 建造者模式将一个复杂的对象的构建与...

  • 建造者模式(部件构造)

    目录 建造者模式的理念 从 POJO 到建造者模式的思考 怎么来实现建造者模式 建造者模式在Android源码中的...

  • 【设计模式】之建造者Builder模式

    建造者模式 什么是建造者模式? 建造者模式属于创建型模式的一员,可以控制对象的实例化过程。建造者模式简化了复杂对象...

  • retrofit源码解析--设计模式分析

    建造者模式 先学习建造者模式,在结合来看代码 UML类图 省略了大部分细节代码,只为了了解Retrofit中的建造...

  • 设计模式之建造者模式

    建造者模式(Builder Pattern)也叫做生成器模式,今天让我们一起学习一下建造者模式。 一、基本介绍 建...

  • 30 Java设计模式系列-建造者(Build)模式

    建造者(Build)模式 建造者(Build)模式是非常常见的设计模式之一,写个笔记,记录一下我的学习过程和心得。...

  • 建造者模式

    一、建造者模式介绍 二、建造者模式代码实例

  • 建造者模式

    建造者模式 首先,建造者模式的封装性很好。使用建造者模式可以有效的封装变化,在使用建造者模式的场景中,一般产品类和...

网友评论

      本文标题:建造者模式学习札记

      本文链接:https://www.haomeiwen.com/subject/gpkpzktx.html