美文网首页
创建对象之构建器

创建对象之构建器

作者: 阿亮私语 | 来源:发表于2016-04-28 22:18 被阅读51次

适用情况:
当对象属性比较多时使用构造器或者静态工厂方法创建对象时会比较复杂所以采用构建器的方式动态扩展属性
主要用于解决对象部分的变化需求
package com.liangliang.coreJava.OOP.builder;
/**
* 构建器builder模式
* @author sunliangliang
* 适用于参数比较多的类
/
public class Lunch {
private String cake;
private String meat;
private String milk;
private String drink;
/
*
* static修饰类主要用于匿名内部类
* @author sunliangliang
*/
public static class Builder{
private String meat;//必填项
private String cake;
private String milk;
private String drink;

        public Builder(String meat){
            this.meat=meat;
        }
        public Builder addCake(String cake){
            this.cake=cake;
            return this;
        }
        public Builder addMilk(String milk){
            this.milk = milk;
            return this;
        }
        public Builder addDrink(String drink){
            this.drink = drink;
            return this;
        }
        public Lunch create(){
            return new Lunch(this);
        }
        
    }
    private Lunch(Builder bulider){
        this.meat=bulider.meat;
        this.cake=bulider.cake;
        this.milk=bulider.milk;
        this.drink=bulider.drink;
    }
    
    @Override
    public String toString() {
        return "Lunch [cake=" + cake + ", meat=" + meat + ", milk=" + milk + ", drink=" + drink + "]";
    }

    public static void main(String[] args) {
        Lunch.Builder builder=new Lunch.Builder("meat");
        Lunch lunch=builder.addCake("cake").addMilk("milk").create();
        System.out.println(lunch.toString());
    
    }
}

相关文章

  • 创建对象之构建器

    适用情况:当对象属性比较多时使用构造器或者静态工厂方法创建对象时会比较复杂所以采用构建器的方式动态扩展属性主要用于...

  • (学习记录)Android源码设计模式解析与实战——第三章总结

    Builder建造者模式 Buider模式是一个创建型模式,用来构建复杂对象的。构建对象一般是通过构造器完成的,但...

  • 建造者模式

    建造者用于构建复杂的对象,使用户可以在不知道对象的构建过程和细节的情况下就可以直接创建复杂的对象。 遇到多个构造器...

  • Builder模式

    一、作用 工匠若水-设计模式(创建型)之建造者模式(Builder Pattern) 用于构建复杂的对象,将构建的...

  • jQuery源码解读-核心机制(2)

    核心机制——分离构造器 1、new操作符构建对象 通过new操作符构建一个对象,一般经过四步: 创建一个新对象 将...

  • 设计模式 - Builder 模式

    Effective Java 第2条:遇到多个构造器参数时要考虑使用构建器 三种创建对象的方式。 目录 重叠构造器...

  • 设计模式之构建器模式

    意图:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。构建器模式主要用于“分步骤构建一个...

  • java代码优化

    1、lombok的@Builder模式 适用场景:构建对象有两种方法,一是构造器,二是默认无参构造器创建对象后使用...

  • NSURLSessionConfiguration的简单实用

    构建URL 构建NSURLSeesionConfiguration 创建会话对象 创建网络任务 记得添加代理

  • 构造器模式-iOS实践

    构造器模式(builder) 意图:将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示适用范围:...

网友评论

      本文标题:创建对象之构建器

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