跳转至

建造者模式 Builder Pattern

更新日期:2022-6-1
  • 2022-6-1:更新格式

定义

也叫作生成器模式。
Separate the construction of a complex object from its representation so that the same construction process can create different representations.

优点

  • 封装性:客户端不必知道模型内部细节
  • 建造者独立,易于扩展
  • 便于控制细节风险 - 可对建造者进行单独的细化

使用场景

  • 相同的方法,不同的执行顺序,产生不同的事件结果的场景
  • 产品类非常复杂,客户端需要进行多项配置

示例

AOSP中的 AlertDialog.Builder

android-25

AlertDialog是Android APP开发中常用的一个类。采用了Builder模式。通过builder可以对dialog进行配置。其中dialog的各项属性可以设置默认值。

public class AlertDialog extends Dialog implements DialogInterface {
    public static class Builder {
        public Builder(Context context) {}
        public Builder setTitle(CharSequence title) {}
        public Builder setMessage(@StringRes int messageId) {}
        public Builder setPositiveButton(@StringRes int textId, final OnClickListener listener) {}
        public Builder setNegativeButton(@StringRes int textId, final OnClickListener listener) {}
        public Builder setCancelable(boolean cancelable) {}
        // ..................................................
        public AlertDialog create() {} //创建dialog
        public AlertDialog show() {} // 创建并显示真正的dialog
    }
}

本站说明

一起在知识的海洋里呛水吧。广告内容与本站无关。如果喜欢本站内容,欢迎投喂作者,谢谢支持服务器。如有疑问和建议,欢迎在下方评论~

📖AndroidTutorial 📚AndroidTutorial 🙋反馈问题 🔥最近更新 🍪投喂作者

Ads