影院售票系统(MyCinema)影院售票系统(MyCinema)问题描述”青鸟影院”开始营业,需要一个售票系统:使用XML和TreeView显示影院放映列表使用泛型集合维护有继承关系的电影票对象座位数可以在系统中指定点击座位可购买不同类型的电影票使用简单工厂模式创建不同类型的电影票使用多态实现不同类型电影票的价格计算使用接口实现电影票的打印使用序列化和反序列化实现销售情况的保存和读取问题分析-1系统主窗口:MainForm问题分析-2类关系父类可以创建普通票父类可以创建普通票问题分析-3
功夫gongfu.jpg周星驰周星驰Action60- 8-009-45
- 10-0011-45
//省略其它电影...放映列表XML文件问题分析-4打印的电影票样式***************************青鸟影院---------------------------电影名:功夫时间:10-0011-45座位号:1-1价格:60******************************************************青鸟影院(赠票)---------------------------电影名:蜘蛛人3时间:16-0017-45座位号:5-6姓名:张三******************************************************青鸟影院(学生)---------------------------电影名:功夫时间:10-0011-45座位号:4-6价格:30***************************难点分析-1几个重要类Cinema类Cinema类座位集合座位集合已售票集合已售票集合放映日程放映日程……放映日程类放映日程类放映场次集合放映场次集合获取放映列表的方法获取放映列表的方法放映场次类放映场次类放映时间放映时间放映的电影放映的电影ScheduleScheduleScheduleItemScheduleItem电影类电影类名称、海报等名称、海报等电影票类电影票类所在座位所在座位所属场次所属场次……难点分析-2使用简单工厂创建不同类型的电影票publicstaticTicketCreateTicket(ScheduleItemscheduleItem,Seatseat,intdiscount,stringcustomerName,stringtype){TicketnewTicket=null;switch(type){case"student":newTicket=newStudentTicket(scheduleItem,seat,discount);break;case"free":newTicket=newFreeTicket(scheduleItem,seat,customerName);break;case"":newTicket=newTicket(scheduleItem,seat);break;}returnnewTicket;}返回父类类型返回父类类型创建不同的子类产品创建不同的子类产品难点分析-3动态加载座...