scala實現建造器模式

2021-09-02 12:13:38 字數 1369 閱讀 4666

package com.linewell.modeldesgin.builder

/*** 建造者模式

* created by ctao on 2015/8/8.

*//**

* 角色建造者

*/trait actorbuilder

ab.createactor()}}

/*** 角色類

*/class actor

/*** 英雄建造器

*/object herobuilder extends actorbuilder

object devilbuilder extends actorbuilder

object anglebuilder extends actorbuilder

package com.linewell.modeldesgin.builder

/*** 測試客戶端

* created by ctao on 2015/8/8.

*//**

* 英雄構造器

*/val ab1: actorbuilder = herobuilder

val actor1 = ab1.construct(ab1)

println(actor1.role+"的外觀:")

println("性別:"+actor1.***)

println("面容:"+actor1.face)

println("服裝:"+actor1.costume)

println("髮型:"+actor1.hairstyle)

/*** 天使構造器

*/val ab2: actorbuilder = anglebuilder

val actor2 = ab2.construct(ab2)

println(actor2.role+"的外觀:")

println("性別:"+actor2.***)

println("面容:"+actor2.face)

println("服裝:"+actor2.costume)

println("髮型:"+actor2.hairstyle)

/*** 惡魔構造器

*/val ab3: actorbuilder = devilbuilder

val actor3 = ab3.construct(ab3)

println(actor3.role+"的外觀:")

println("性別:"+actor3.***)

println("面容:"+actor3.face)

println("服裝:"+actor3.costume)

println("髮型:"+actor3.hairstyle)

}

建造者模式(python實現)

建造者模式 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。encoding utf 8 by panda 建造者模式 def printinfo info print unicode info,utf 8 encode gbk 建造者基類 class personbuil...

設計模式 構建器 建造者 模式

定義 使用多個簡單的物件構建成乙個複雜的物件。個人理解 講乙個整體的各個部分組合到一起,例如乙個人有年齡 身高等屬性,統計資訊時可能會用到這個人某幾個屬性,那麼需要什麼就把什麼組合到一起。優點 建造者建造自己的東西,也可擴充套件。缺點 當內部比較複雜的時候,就會對應的建造很多類。public cla...

scala實現原型模式

package com.linewell.modeldesgin.prototype 樣例類,週報,通過其提供的copy方法完成乙個原型模式 param name 姓名 param date 時間 param content 內容 case class weeklylog var name stri...