美文网首页
Android设计模式——Builder模式

Android设计模式——Builder模式

作者: 李die喋 | 来源:发表于2019-10-04 22:45 被阅读0次

builder模式即建造者模式,他的作用是将一个复杂对象的构建和他的表示分离。

实现要点

  • 把需要set方法来设置的多个属性封装在一个配置类里
  • 具体的set方法放在配置类的内部类Builder类中,并且每个set方法都返回自身,以便进行链式调用。

下面写一个简单的例子 我们平常都会自己写toolbar 这里把toolbar的属性封装起来。

public class ToolbarConfig{
    //标题栏的所有属性在这个类中
    public SettingConfig settingConfig = new SettingConfig();
    
    private ToolbarConfing(){}
    
    public static class Builder{
        SettingConfig settingConfig = new SettingConfig();
        
        public Builder setLeftImage(int leftImageId){
            settingConfig.leftImageId = leftImageId;
            return this;
        }
        
        public Builder setRightImage(int rightImageId){
             settingConfig.rightImageId = rightImageId;
             return this;
        }
        
        public Builder setCenterText(String centerText){
            settingConfig.centerText = centerText;
            return this;
        }
        
        void applyConfig(ToolbarConfig config){
            config.settingConfig = this.settingConfig;
        }
        
        public ToolbarConfig create(){
            ToolbarConfig config = new ToolbarConfig();
            applyConfig(config);
            return config;
        }
    }
}

调用:

ToolbarConfig config = new ToolbarConfig.Builder()
.setLeftImage(R.id.left)
.setRightImage(R.id.right)
.setCenterText("注册")
.create();

Builder模式比较常用的实现形式是通过链式调用实现,这样更简洁美观。

相关文章

网友评论

      本文标题:Android设计模式——Builder模式

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