建造者模式

当构造方法参数过多时可以考虑建造者模式

public class BuilderMode {
    private String name;
    private int age;
    private String title;
    private String page;

    BuilderMode(String name, int age, String title, String page) {
        this.name = name;
        this.age = age;
        this.title = title;
        this.page = page;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public String getTitle() {
        return title;
    }

    public String getPage() {
        return page;
    }

    public static class Builder{
        private String name;
        private int age;
        private String title;
        private String page;
        Builder() {
        }
        public Builder setName(String name){
            this.name = name;
            return this;
        }
        public Builder setAge(int age){
            this.age = age;
            return this;
        }
        public Builder setTitle(String title){
            this.title = title;
            return this;
        }
        public Builder setPage(String page){
            this.page = page;
            return this;
        }
        public BuilderMode build(){
            return new BuilderMode(name,age,title,page);
        }
    }
}

builder使用

 BuilderMode.Builder builder = new BuilderMode.Builder();
    BuilderMode builderMode = builder.setName("22").setAge(12)
            .setPage("11").setTitle("33").build();
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 书单:积极心理学三部曲《活出最乐观的自己》《认识自己,接纳自己》《真实的幸福》情绪三部曲《控制焦虑》《控制愤怒》《...
    海鸥老师阅读 621评论 0 1
  • 1.for循环的循环变量区和内容区是2个作用域 2.let+const 暂时性死区:只要定义了该变量,就不再受外部...
    shanshanfei阅读 381评论 0 0
  • 状态栏的字体为黑色:UIStatusBarStyleDefault 状态栏的字体为白色:UIStatusBarSt...
    高先生Devin阅读 206评论 0 0