Android设计模式之建造者模式-Kotlin版

2,544 阅读1分钟

1.定义

将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

2.介绍

建造者模式属于创建型模式。 建造者模式主要用来创建复杂的对象,用户可以不用关心其建造过程和细节。 例如:当要组装一台电脑时,我们选择好CPU、内存、硬盘等等,然后交给装机师傅,装机师傅就把电脑给组装起来,我们不需要关心是怎么拼装起来的。

3.实现

         var person = Person
            .build()
            .setName("张三疯")
            .setPrice("武当扛把子")
            .create()
 
        Log.e("zxy",person.show()) //输出功能

创建类

/**
 * Created by zxy on 2019/9/12-16:40
 * ******************************************
 * * Kotlin建造者模式-人物类
 * ******************************************
 */
class Person private constructor() {
    private lateinit var name: String  //人物的名字
    private lateinit var job: String   //人物的职位
 
    companion object {
        fun build(): Builder {//静态实例化建造者Builder类
            return return Builder()
        }
    }
    //建造者类
    class Builder  {
        var mPerson = Person() //实例化人物类
 
        fun setName(name: String): Builder {//设置名字
            mPerson.name = name
            return this
        }
 
        fun setPrice(job: String): Builder { //设置职位
            mPerson.job = job
            return this
        }
 
        fun create(): Person {//创建Computer类的实例化
            return mPerson
        }
    }
 
    fun show():String{// 功能 -输出属性值  根据需求定制
        return "Person(name='$name', job=$job)"
    }
}