客户端:

package HotelSystem;import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.util.Scanner;import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter.DEFAULT;public class Client {public static void main(String[] args) throws IOException {Hotel hotel = new Hotel();Scanner s = new Scanner(System.in);while (true) {System.out.println("请输入你要选择的功能: 1 查看房间  2 房间预订 3 退房  0 退出");int a = s.nextInt();switch (a) {case 1:hotel.show();break;case 2:System.out.println("请输入房间号");int b = s.nextInt();hotel.order(b);break;case 3:System.out.println("请输入房间号");int c = s.nextInt();hotel.checkOut(c);break;case 0:return;}}}
}

房间类:

package HotelSystem;import java.io.Serializable;public class Room implements Serializable {/*** 如果不加 每次更改类,UID就变了,需要重新序列化* * 目的 : 控制序列化对象的版本,如果新版本兼容旧版本,这个值 就不用改 ,如果不兼容 就把值更改,原来的序列化对象就不能用了* * 版本号*/private static final long serialVersionUID = 1L;
private int number;
private String type;
private boolean flab;
//getSet方法
public int getNumber() {return number;
}
public void setNumber(int number) {this.number = number;
}
public String getType() {return type;
}
public void setType(String type) {this.type = type;
}
public boolean isFlab() {return flab;
}
public void setFlab(boolean flab) {this.flab = flab;
}
// 构造方法
public Room(int number, String type, boolean flab) {super();this.number = number;this.type = type;this.flab = flab;
}
@Override
public String toString() {return "Room ["+ number +"  "+  type +"  "+ (flab==true?"空闲":"占用") + "]";
}}

酒店类:

package HotelSystem;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.security.PublicKey;
public class Hotel {private Room[][] rooms;public Hotel(){File file=new File("./src/hotel");if(!file.exists()){//创建酒店房间的个数rooms=new Room[5][10];  //对酒店进行初始化for(int i=0;i<rooms.length;i++){for(int j=0;j<rooms[i].length;j++){if(i<=2){rooms[i][j]=new Room((i+1)*100+j+1, "标准间", true);}if(i>2&&i<4){rooms[i][j]=new Room((i+1)*100+j+1, "双人间", true);}if(i==4){rooms[i][j]=new Room((i+1)*100+j+1, "豪华间", true);}}}}else {try(//反序列化FileInputStream fis=new FileInputStream("./src/hotel");ObjectInputStream ois =new ObjectInputStream(fis);) {Object object=ois.readObject();rooms=(Room[][])object;} catch (Exception e) {// TODO: handle exception}} }// 序列化public  void m1(){try (  FileOutputStream fos=new FileOutputStream("./src/hotel");ObjectOutputStream oos=new ObjectOutputStream(fos);){oos.writeObject(rooms);} catch (Exception e) {e.printStackTrace();}}//房间展示public  void show(){for(int i=0;i<rooms.length;i++){for(int j=0;j<rooms[i].length;j++){System.out.print(rooms[i][j]+"      ");}System.out.println();}}    //房间预订public void order(int num){if (num/100-1>4 || num%100-1>9){System.err.println("该房间不存在,请输入正确的房间号!");}else {if(num==rooms[num/100-1][num%100-1].getNumber()){if(rooms[num/100-1][num%100-1].isFlab()==false){System.err.println("该房间已被占用,请选择其他房间");}else {rooms[num/100-1][num%100-1].setFlab(false);System.out.println("预订成功!!!");}               }}m1();}//退房public void checkOut(int num){if (num/100-1>4 || num%100-1>9){System.err.println("该房间不存在,请输入正确的房间号!");}else {if(rooms[num/100-1][num%100-1].isFlab()==true){System.err.println("该房间无需退房!!!");}else {rooms[num/100-1][num%100-1].setFlab(true);System.out.println("退房成功!!!");  }}      }
}

酒店管理系统升级(实现序列化)相关推荐

  1. 酒店管理系统升级(.net4.0 + sql2005 + linq to sql)

    成都酒店管理系统(.net4.0 + sql2005/2008 + linq to sql) 参考"东方之星酒店管理系统 2010版",基于.net4.0开发框架,C#语言,C/S ...

  2. 管理活动目录域服务实训_酒店管理专业开展酒店实训活动

    延边大学经济管理学院 酒店管理专业实训课活动 NO.1 理论与实践的结合 为加强酒店管理专业学生技能操作能力,深入了解现代酒店各部门工作职能,12月9日上午,酒店管理专业于珲春校区学文楼4楼客房实训室 ...

  3. 酒店中计算机信息应用的重要性,浅析计算机在酒店管理中所体现的应用价值

    浅析计算机在酒店管理中所体现的应用价值 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 浅析计算机在酒店管理中所体现的应用价值 1概述 ...

  4. PHP酒店管理demo案例(数组遍历)

    PHP酒店管理demo案例(数组遍历) 目录 PHP酒店管理demo案例(数组遍历) PHP酒店管理前台编码: PHP酒店管理后台编码: 执行效果: 点击入住测试: 退房测试: 源码地址: PHP酒店 ...

  5. mysql 酒店管理设计_酒店管理系统的设计与实现(Myeclipse,MySQL)

    酒店管理系统的设计与实现(Myeclipse,MySQL)(任务书,开题报告,中期检查表,文献综述,外文翻译,毕业论文12000字,程序代码,MySQL数据库) 本系统是一个酒店管理系统,以Java ...

  6. 【渝粤题库】国家开放大学2021春2444酒店管理概论答案

    试卷代号:2444 2 0 2 1年春季学期期末统一考试 酒店管理概论试题答案及评分标准 (供参考) 2021年7月 一.单项选择题(在备选答案中,有1个正确答案,请将正确答案的字母填在括号内,每小题 ...

  7. 酒店管理与计算机技术结合,(定稿)某酒店内部管理系统的开发与应用(完整版)...

    <某酒店内部管理系统的开发与应用.doc>由会员分享,可免费在线阅读全文,更多与<(定稿)某酒店内部管理系统的开发与应用(完整版)>相关文档资源请在帮帮文库(www.woc88 ...

  8. 管理活动目录域服务实训_2019级酒店管理专业前厅与客房服务校外课程实训总结篇...

    点击蓝字关注我们 风清花落定,时光踏下轻盈的足迹,我们迎来了实训周的最后一章.19级酒店管理专业<前厅与客房服务>校外课程实训周于2019年12月5日落下帷幕,各小组收拾行囊,带着笑容和收 ...

  9. 计算机技术在酒店管理专业的应用与探索,计算机信息化在高职酒店管理专业教学中的应用.doc...

    计算机信息化在高职酒店管理专业教学中的应用.doc 计算机信息化在高职酒店管理专业教学中的应用 [摘 要]社会经济的发展,推动了科技的革新,计算机网络技术在酒店管理与服务中的应用越来越广泛.计算机技术 ...

最新文章

  1. 在Servlet中获取Spring注解的bean
  2. 关于Echarts的填坑之旅
  3. 自定义存储过程和函数
  4. WPF 中设置Combox下拉框Text 显示值
  5. $ajax不能识别,JQuery/JS Ajax功能无法识别
  6. 高精除(信息学奥赛一本通-T1308)
  7. jsp___jstl标签
  8. Android开发中如何调用摄像头的功能
  9. c语言设计函数型号发生器,基于51单片机函数信号发生器
  10. Bootstrap自定义图标
  11. 最新我爱防红网QQ防红跳转短网址生成源码
  12. 1138 清除行注释
  13. 【CRC笔记】CRC-16 IBM-SDLC C语言实现
  14. 盘点2011年的网络流行语
  15. 如何获取网络协议的协议号
  16. 百度又一神器发布!网友:牛逼炸了...
  17. 白痴学日语系列之初识日语(七)附语法二
  18. centos7安装配置yum软件仓库
  19. 计算机二级第38套excel,38套EXCEL 仪表盘
  20. input输入字符限制

热门文章

  1. 我有几个同事去了趟以色列
  2. 可变调的蜂鸣器、电子音乐
  3. WWDC20 发布会你看了吗?看完 WWDC20 后的感受
  4. python 立体图像_Anaglyph - 立体图像
  5. canvas上,如何绘制带有箭头的直线?
  6. 【C语言】指针和引用的区别
  7. 没有这些强迫症?那你可能是个假的程序员
  8. 计蒜客题解——T1157:派
  9. 爬虫日记-模拟登录cookie操作
  10. 不可不学的摄影技巧.4——后期处理