课程设计模板--面向对象技术.doc





《课程设计模板--面向对象技术.doc》由会员分享,可在线阅读,更多相关《课程设计模板--面向对象技术.doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、通信与信息工程学院面向对象技术II课程设计班 级:物联网1202班姓 名:杨文涛学 号:指导教师:设计时间:12.291.4成 绩:评 语:通信与信息工程学院二一三年目 录1、实验项目一4一、项目名称4创建型模式,属于基础型(工厂模式)4二、模式介绍4三、项目模式分析5(一)选择信息发送方式(抽象工厂模式)51.类图52.程序介绍53.测试结果8(二)、饮料生产(简单工厂模式)91.类图92.程序介绍93测试结果112、实验项目二11一、项目名称11结构型模式,属于创新型11二、模式介绍12三、项目模式分析12(一)川菜师模型121.类图122.程序介绍133测试结果15(二)学生模型151.
2、类图152.程序介绍153.测试结果183.工厂模式和适配器模式优缺点191、实验项目一一、项目名称创建型模式,属于基础型(工厂模式)二、模式介绍(1)实例一用工厂模式设计一个信息发送选择的模拟程序,采用抽象工厂模式,专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类,完成信息发送。(2)实例二用工厂模式设计一个饮料工厂的模拟程序,采用简单工厂模式,专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。它又称为静态工厂方法模式,属于类的创建型模式。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)
3、的实例。该模式中包含的角色及其职责(1)工厂角色简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。(2)抽象角色简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口。(3)具体产品角色简单工厂模式的创建目标,所有创建的对象都是充当这个角色的某个具体类的实例。在这个模式中,工厂类是整个模式的关键所在。它包含必要的判断逻辑,能够根据外界给定的信息,决定究竟应该创建哪个具体类的对象。用户在使用时可以直接根据工厂类去创建所需的实例,而无需了解这些对象是如何创建以及如何组织的。有利于整个软件体系结构的优化。三、项目模式分析1.设计的目的
4、、意义 熟练掌握工厂模式的构成,并能够很好的理解并应用,可以使用工厂模式完成实验要求,提高自我动手能和编写代码能力。(一)选择信息发送方式(抽象工厂模式)1.类图2.程序介绍(1).Sender 类package ywt;public abstract class Sender public abstractvoid send();创建一个抽象类,和抽象发送方法send.(2).Mailsend,Smssend 类package ywt;public class Mailsend extends Sender public void send()System.out.println(完成用QQ
5、Mail发送);package ywt;public class Smssend extends Sender public void send() System.out.println(完成用Sms发送); 继承Sender类实现方法send.(3).SendFactory类package ywt;public abstract class SendFactory public abstract Sender send();创建抽象工厂SendFactory,和抽象方法Sender。(4)MailFactory,SmsFactory类package ywt;public class SmsF
6、actory extends SendFactory public Sender send()return new Smssend();package ywt;public class MailFactory extends SendFactory public Sender send()return (new Mailsend();继承实现SendFactory类,子工厂完成对象的实例化。(5)Text类package ywt;import java.util.Scanner;public class Text public static void main(String args) Sys
7、tem.out.println(请输入发送方式:Mail 1 Sms 2);System.out.println(你选择的是:);Scanner input=new Scanner(System.in);int sc=input.nextInt();switch(sc)case 1: SendFactory mf=new MailFactory(); Sender send1=mf.send(); send1.send();break;case 2: SendFactory sf=new SmsFactory(); Sender send2=sf.send(); send2.send();br
8、eak; 对工厂模式结构进行检测,完成工厂模式对象实例化。3.测试结果(1)实例化对象选择(2)完成实例化,输出结果(二)、饮料生产(简单工厂模式)1.类图2.程序介绍(1)drinkfactory类import java.util.Scanner;public class drinkfactory public drink product()System.out.println(请输入生产产品:cola(1) beer(2);System.out.println(你选择的是:);Scanner input=new Scanner(System.in);/this.name=name;Stri
9、ng name=input.nextLine();if(1.equals(name)return (new cola(); else if (2.equals(name)return(new beer(); else return(null) ; 创建工厂,实现产品的实例化。(2)接口drinkpublic interface drink public void product();为客户端提供实例化接口,实现产品生产。(3)cola类,beer类public class cola implements drink public void product()System.out.println
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 模板 面向 对象 技术

限制150内