美文网首页
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