本文转载自微信公众号《好困》,作者萌新。转载此文,好困烦请联系我公众号。构建器模式:从多个简单对象按特定顺序逐步创建一个复杂对象。旨在将复杂对象的构造与其表示分离。主要解决方案主要是解决“复杂对象”的构造和组合。这个“复杂对象”是由多个子对象按照一定的规则组合而成的。关键代码生成器:组装多个子对象。使用场景复杂对象由多个子对象组成。代码实现了代码的主要功能:定义两个子对象cat和dog,通过builder将这两个子对象组装成对应的复杂对象pet。1.定义各种“商品”构建抽象商品接口1/**2*抽象商品接口3*/4publicinterfaceItem{56//商品名称7publicStringname();8//商品价格9publicFloatprice();10//默认行为11publicStringcanDO();12}构造“猫”产品1/**2*猫产品抽象类3*提供猫默认行为4*/5publicabstractclassCatimplementsItem{67publicStringcanDO(){8return"miaomiao....";9}0}bigCat1/**2*bigcat3*/4publicclassBigCattextendsCat{5@Override6publicStringname(){7return"bigcat";8}910@Override11publicFloatprice(){12return500.0f;13}14}smallCat1publicclassSmallCattextendsCat{2@Override3publicsmallStringname()}67@Override8publicFloatprice(){9return100.0f;10}11}构造“狗”产品1/**2*狗产品抽象类3*提供狗默认行为4*/5publicabstractclassDogiimplementsItem{67publicStringcanDO(){8return"wangwang....";9}0}bigDog1/**2*bigdog3*/4publicclassBigDogextendsDog{5@Override6publicStringname(){7return"bigdog";8}910@Override11publicFloatprice(){12return1000.0f;13}14}SmallDog1/**2*smalldog3*/4publicclassSmallDogextendsDog{5@Override6publicStringname(){7return"smalldog";8}910@Override11publicFloatprice(){12return200.0f;13}14}2.定义抽象“package”,构建“pet”包1/**2*pet3*/4publicclassPet{56privateList
