组件地址
<dependency>
<groupId>org.opengoofy.index12306</groupId>
<artifactId>index12306-designpattern-spring-boot-starter</artifactId>
<version>${project.version}</version>
</dependency>
组件功能
封装构建者模式
构建者模式相对简单,仅需要提供一个抽象接口即可。构建者相关的特性均在实现类中完成
package org.opengoofy.index12306.framework.starter.designpattern.builder;
import java.io.Serializable;
/**
* Builder 模式抽象接口
*
*/
public interface Builder<T> extends Serializable {
/**
* 构建方法
*
* @return 构建后的对象
*/
T build();
}
Hutool如何使用Builder模式创建线程池
Builder 模式应用场景
由于线程池创建时构造器函数过多以及属性之间存在依赖关系和约束条件,所以非常适合使用构建者模式
Hutool Builder 创建线程池
Hutool 线程池相关使用 Builder 设计模式有两处,一个是创建线程池,另一个是创建线程工厂,我们重点围绕线程池说
创建 Hutool 线程池比较简单且优雅,笔者较喜欢这种链式风格,所以抽象公共业务时都会使用此模式,如图所示
总结:创建接口,实现接口重写build方法,build方法里调用另一个重载的用于管理属性间约束的build方法,即可完成创建