预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

《Java设计模式》实验指导书主讲教师:孙晓飞枣庄学院信息科学与工程学院目录实验一“创建型模式”的应用1实验二“结构型模式”的应用3实验三“行为型模式”(1)的应用5实验四“行为型模式”(2)的应用7实验五混合设计模式9实验一“创建型模式”的应用一、实验目的1、以本实验指导中的FactoryMethod模式为实验实例,掌握五类“创建型模式”的工作原理和应用环境。2、掌握工厂方法模式(FactoryMethod)、抽象工厂模式(AbstractFactory)、建造者模式(Builder)、原型模式(Prototype)、单例模式(Singleton)等五类“创建型模式”的实验过程。二、实验原理1、创建型模式的工作原理创建型模式隐藏了类的实例的创建细节,通过隐藏对象如何被创建和组合在一起达成使整个系统独立的目的。创建型模式分为:工厂方法模式(FactoryMethod)、抽象工厂模式(AbstractFactory)、建造者模式(Builder)、原型模式(Prototype)、单例模式(Singleton)等五类。2、FactoryMethod模式的工作原理工厂方法模式(FactoryMethodPattern):也叫虚拟构造器(VirtualConstructor)模式或者多态工厂(PolymorphicFactory)模式,在工厂方法模式中,工厂父类负责定义创建产品对象的公共接口,而工厂子类则负责生成具体的产品对象,这样做的目的是将产品类的实例化操作延迟到工厂子类中完毕。它的UML类图如下:工厂方法模式包含如下角色:Product:抽象产品ConcreteProduct:具体产品Creator:抽象工厂ConcreteCreator:具体工厂FactoryMethod模式的特点为当系统扩展需要添加新的产品对象时,仅仅需要添加一个具体产品对象以及一个具体工厂对象,原有工厂对象不需要进行任何修改,也不需要修改客户端,很好地符合了“开闭原则”。3、抽象工厂模式(AbstractFactory)、建造者模式(Builder)、原型模式(Prototype)、单例模式(Singleton)的工作原理应通过教材复习。三、实验内容用FactoryMethod模式设计一个饮料工厂的模拟程序:规定为每种品牌的饮料提供一个子工厂,如:芒果汁工厂专门负责生产芒果汁,苹果汁工厂专门负责生产苹果汁,假如需要生产桃子汁或菠萝汁,只需要相应增长一个新的桃子汁工厂或菠萝汁工厂即可,原有的工厂无须做任何修改,使得整个系统具有更加的灵活性和可扩展性。四、实验规定所设计的实验程序要满足以下两点:1)体现“创建型模式”的工作原理;2)符合面向对象的七条设计原则。五、实验环节1、设计“饮料工厂”的类图。参考教材P48完毕类图。2、根据类图写出“饮料工厂”的源代码(代码参照教材P48,实验报告中写出重要的几个类)。3、上机测试程序,写出运营结果。六、实验小结整理实验结果,小结实验心得体会。实验二“结构型模式”的应用一、实验目的1、以设计适配器模式(Adapter)为实验实例,掌握“结构型模式”的工作原理、应用环境和应用方法。2、掌握适配器模式(Adapter)、桥接模式(Bridge)、组合模式(Composite)、装饰模式(Decorator)、外观模式(Facade)、享元模式(Flyweight)、代理模式(Proxy等七类“结构型模式”的实验过程。二、实验原理1、结构型模式的工作原理结构型模式(StructuralPattern)描述如何将类或者对象结合在一起形成更大的结构,就像搭积木,可以通过简朴积木的组合形成复杂的、功能更为强大的结构。结构型模式可以分为类结构型模式和对象结构型模式。也可分为:适配器模式(Adapter)、桥接模式(Bridge)、组合模式(Composite)、装饰模式(Decorator)、外观模式(Facade)、享元模式(Flyweight)、代理模式(Proxy)等七类。2、Adapter模式的工作原理适配器模式(AdapterPattern):将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。UML类图如下:适配器模式包含如下角色:Target:目的抽象类Adapter:适配器类Adaptee:适配者类3、桥接模式(Bridge)、组合模式(Composite)、装饰模式(Decorator)、外观模式(Facade)、享元模式(Flyweight)、代理模式(Proxy)的工作原理可仔细复习教材。三、实验内容1、用Adapter模式模拟一个厨师不断提高自己的过程规定:一个人最初是一个面点师,后来他学习了川菜,又成了川菜师。以适配器模式为进行系统设计。四、实