欢迎来到天天文库
浏览记录
ID:45585651
大小:124.24 KB
页数:12页
时间:2019-11-15
《实验指导书(设计模式)(精)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《Java设计模式》实验指导书主讲教师:孙晓飞枣庄学院信息科学与工程学院实验一“创建型模式”的应用1实验二“结构型模式”的应用3实验三“行为型模式”(1)的应用5实验四“行为型模式”(2)的应用7实验五混合设计模式9实验一“创建型模式”的应用一、实验目的1、以木实验指导屮的FactoryMethod模式为实验实例,掌握五类“创建型模式”的T作原理和应用环境。2^掌握工厂方法模式(FactoryMethod)、抽象工厂模式(AbstractFactory)>建造者模式(Builder)、原型模式(Prototype)>单例模式(Singleton
2、)等五类“创建型模式”的实验过程。二、实验原理1、创建空模式的工作原理创建型模式隐藏了类的实例的创建细节,通过隐藏对象如何被创建和组合在一起达到使整个系统独立的目的。创建型模式分为:工厂方法模式(FactoryMethod)、抽象工厂模式(AbstractFactory)建造者模式(Builder)s原型模式(Prototype)s单例模式(Singleton)等五类。2、FactoryMethod模式的工作原理TJ方法模式(FactoryMethodPattern):也叫虚拟构造器(VirtualConstructor)模式或者多态工厂(Po
3、lymorphicFactory)模式,在工厂方法模式屮,工厂父类负贵定义创建产品对象的公共接口,而工厂了类则负责生成具体的产品对彖,这样做的冃的是将产品类的实例化操作延迟到工厂子类中完成。它的UML类图如下:Creator<>>Product•伍ctoryO:ProductA△II>IConcreteCreatorConcreteProduct•伍ctotyO:Product工厂方法模式包含如下角色:/Product:抽象产品/ConcreteProduct:貝体产品/Creator:抽象工厂丁ConcreteCreat
4、or:具体工厂FactoryMethod模式的特点为当系统扩展需要添加新的产品对象时,仅仅需要添加一个具体产品对象以及一个具体工厂对象,原冇工厂对象不需要进行任何修改,也不盂要修改客户端,很好地符合了“开闭原则”。3、抽彖丄厂模式(AbstractFactory)、建造者模式(Builder)、原型模式(Prototype)>单例模式(Singleton)的工作原理应通过教材复习。三、实验内容用FactoryMethod模式设引•一个饮料工厂的模拟程序:耍求为每种品牌的饮料提供一个子工厂,女芒果汁工厂专门负责生产芒果汁,苹果汁工厂专门负责生产苹
5、果汁,如果需要生产桃了汁或菠萝汁,只需要对应增加一个新的桃了汁工厂或波萝汁工厂即可,原有的工厂无须做任何修改,使得整个系统具有更加的灵活性和可扩展性。四、实验要求所设计的实验程序要满足以下两点:1)体现“创建型模式”的工作原理;2)符合面向对象的七条设计原则。五、实验步骤1、设计“饮料工厂”的类图。参考教材P48完成类图。2、根据类图写出“饮料工厂”的源代码(代码参照教材P48,实验报告屮写出主要的儿个类)。3、上机测试程序,写出运行结果。六、实验小结整理实验结果,小结实验心得体会。实验二“结构型模式”的应用一、实验冃的1、以设计适配器模式(A
6、dapter)为实验实例,掌握“结构型模式”的工作原理、应用环境和应用方法。2、掌握适配器模式(Adapte"、桥接模式(Bridge)>组合模式(Composite)、装饰模式(Decorator)>外观模式(Facade)、享元模式(Flyweight)、代理模式(Proxy等七类“结构型模式”的实验过程。二、实验原理1、结构型模式的工作原理结构型模式(StructuralPattem)描述如何将类或者对象结合在一起形成更大的结构,就像搭积木,可以通过简单积木的组合形成复杂的、功能更为强人的结构。结构型模式可以分为类结构型模式和对彖结构型模
7、式。也可分为:适配器模式(Adapter)、桥接模式(Bridge)>组合模式(Composite)、装饰模式(Decora(or)、外观模式(Facade)、享元模式(Flyweight)、代理模式(Proxy)等七类。2、Adapter模式的工作原理适配器模^(AdapterPattern):将--个接口转换成客八希望的另-一个接口,适配器模式使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)oUML类图如下:Adaptee、、丄丄i〈匸1.1.aj尸Target♦specificRequest()♦request()适配器
8、模式包含如下角色:Target:1=1标抽象类Adapter:适配器类Adaptee:适配者类3^桥接模式(Bridge)、组合模式(Composit
此文档下载收益归作者所有