




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验三实验三 抽象工厂模式的运用抽象工厂模式的运用 一 实验目的 一 实验目的 抽象工厂模式提供一个接口 用于创建相关或依赖对象的家族 而不需要明确指定具 体类 在熟悉抽象工厂模式相关理论知识的基础上 使用抽象工厂模式实现 电脑配置 商店 程序 二 实验要求 二 实验要求 使用抽象工厂模式实现 电脑配置商店 要求如下 1 电脑由 CPU 主板 显卡 内存 硬盘等配件组合而成 现电脑配置有两种配置 方案 2 根据配置方案可以显示具体配置信息 3 根据配置方案可以显示价格 1 设计并绘制该程序的类图 2 依照设计的类图使用 Java 语言编写代码 并实现该程序 3 除了核心的模式相关类实现外 提供测试环境 按照难度高低 分别是 a 控制台程序 Client 硬编码初始化模式和测试环境 运行结果文本输出 b 控制台程序 Client 初始化测试环境 并根据用户输入运算 运行结果文本输出 c 设计并实现用户 UI Client 初始化测试环境 并根据用户在 UI 控件上的输入运算 运 行结果文本输出 三 实验内容 三 实验内容 类图类图 代码代码 public abstract class Computer store Computer factory computer public abstract Computer factory createComputer String type Computer factory java public interface Computer factory public Cpu createCpu public Mainboard createMainboard public GraphicsCard createGraphicsCard public Ram createRam public Harddisk createHarddisk public void displayPrice 电脑制造电脑制造 public class Plan A factory implements Computer factory public Plan A factory System out println n 配置方案一配置方案一 public Cpu createCpu TODO 自动生成的方法存根自动生成的方法存根 return new Plan A Cpu public Mainboard createMainboard TODO 自动生成的方法存根自动生成的方法存根 return new Plan A Mainboard public GraphicsCard createGraphicsCard TODO 自动生成的方法存根自动生成的方法存根 return new Plan A GraphicsCard public Ram createRam TODO 自动生成的方法存根自动生成的方法存根 return new Plan A Ram public Harddisk createHarddisk TODO 自动生成的方法存根自动生成的方法存根 return new Plan A Harddisk public void displayPrice TODO 自动生成的方法存根自动生成的方法存根 System out println RMB 4000 public class Plan B factory implements Computer factory public Plan B factory System out println n 配置方案二配置方案二 public Cpu createCpu TODO 自动生成的方法存根自动生成的方法存根 return new Plan B Cpu public Mainboard createMainboard TODO 自动生成的方法存根自动生成的方法存根 return new Plan B Mainboard public GraphicsCard createGraphicsCard TODO 自动生成的方法存根自动生成的方法存根 return new Plan B GraphicsCard public Ram createRam TODO 自动生成的方法存根自动生成的方法存根 return new Plan B Ram public Harddisk createHarddisk TODO 自动生成的方法存根自动生成的方法存根 return new Plan B Harddisk public void displayPrice TODO 自动生成的方法存根自动生成的方法存根 System out println RMB 5000 配置接口配置接口 Cpu java public interface Cpu String Cpu new String GraphicsCard Java public interface GraphicsCard String GraphicsCard new String Mainboard java public interface Mainboard String Mainboard new String Ram java public interface Ram String Ram new String 接口实现接口实现 public class Plan A Cpu implements Cpu String Cpu new String public Plan A Cpu Cpu AMD FX 8350 System out println Cpu Cpu public class Plan A GraphicsCard implements GraphicsCard String GraphicsCard new String public Plan A GraphicsCard GraphicsCard 微星微星 GTX 970 System out println GraphicsCard GraphicsCard public class Plan A Harddisk implements Harddisk String Harddisk new String public Plan A Harddisk Harddisk IDE System out println Harddisk Harddisk public class Plan A Mainboard implements Mainboard String Mainboard new String public Plan A Mainboard Mainboard ASUS System out println Mainboard Mainboard public class Plan A Ram implements Ram String Ram new String public Plan A Ram Ram 2g System out println Ram Ram public class Plan B Cpu implements Cpu String Cpu new String public Plan B Cpu Cpu intel i5 System out println Cpu Cpu public class Plan B GraphicsCard implements GraphicsCard String GraphicsCard new String public Plan B GraphicsCard GraphicsCard 影驰影驰 GT730 System out println GraphicsCard GraphicsCard public class Plan B Harddisk implements Harddisk String Harddisk new String public Plan B Harddisk Harddisk SATE System out println Harddisk Harddisk public class Plan B Mainboard implements Mainboard String Mainboard new String public Plan B Mainboard Mainboard GIGABYTE System out println Mainboard Mainboard public class Plan B Ram implements Ram String Ram new String public Plan B Ram Ram 4g System out println Ram Ram 电脑基类电脑基类 public class Computer extends Computer store public Computer factory createComputer String type Computer factory computer null if type equals 配置方案一配置方案一 computer new Plan A factory else if type equals 配置方案二配置方案二 computer new Plan B factory computer createCpu computer createGraphicsCard computer createHarddisk computer createMainboard computer createRam computer displayPrice return computer 测试测试 import java util Scanner public class TEST public static void main String args TODO 自动生成的方法存根自动生成的方法存根 Computer c new Computer Scanner sc new Scanner System in for int p 0 p 1 System out println 输入选项选择不同的电脑配置方案输入选项选择不同的电脑配置方案 1 配置方案一 配置方案一 2 配置方案二 配置方案二 String k sc nextLine switch k case 1 c createComputer 配置方案一配置方案一 break case
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 足球传接球 教学设计-2023-2024学年高一上学期体育与健康人教版必修第一册
- 第1课 彩虹出现-渐变工具的使用说课稿-2025-2026学年初中信息技术辽师大版2015八年级上册-辽师大版2015
- 5.1 分式的意义教学设计-2025-2026学年初中数学浙教版2024七年级下册-浙教版2024
- 5.5 线性规划问题的应用举例说课稿-2025-2026学年中职基础课-职业模块 财经、商贸与服务类-高教版-(数学)-51
- 二年级语文下册 课文3 11 我是一只小虫子第1课时说课稿 新人教版
- 2025年标准员考试题库及答案
- 2025年海口市滨海第九小学四年级第七单元测试数学试卷新课
- 2025年北京社区考试题库及答案
- 第12課 夏休みの思い出 教案2024-2025学年初中日语人教版七年级第一册
- 2025办公大楼租赁合同范本
- 2025年彩票技术管理员招聘笔试模拟题
- 迷彩九月+启航青春+课件-2025-2026学年高一上学期开学军训动员主题班会
- 2025年暑期教师研修心得-研修蓄力笃行致远
- 2025秋人教版初中数学九年级上册教学计划及进度表
- 2025年中国烟花爆竹协会烟花工艺师认证考试专项练习含答案
- 2025年政府会计准则制度实施能力考试(气象事业单位)高频错题及答案
- 2024年陕西事业单位联考A类综合应用能力试题及答案
- 河北省大厂回族自治县2025年上半年事业单位公开招聘教师岗试题含答案分析
- 人教版物理九年级全一册16.1《电压》听评课记录
- (2025年标准)被迫堕胎补偿协议书
- 咸阳赤壁市事业单位招聘笔试真题2024
评论
0/150
提交评论