资料详情

基于JAVA的酒店住宿管理系统课程论文

头像

理工论文

编号:11044
.names)){

System.out.println("姓名  \t  年龄  \t 电话  \t 身份证号  \t 房间类型   \t 收费");

System.out.println( num[i].b.names + "\t" + num[i].b.age + "\t" + num[i].b.tel + "\t" + num[i].b.IDnumber + "\t\t\t"  + num[i].a.room + "\t" + num[i].a.price);

System.out.println("***查询完成!***");

}

}

if(i==24){

System.out.println("不存在其旅客!");

}

}

public void tuifang(){

System.out.println("请输入旅客姓名:");

String name1 = input.next();

System.out.println(j);

for(i = 0; i<j; i++){

if(name1.equals(num[i].b.names)){

System.out.println("姓名 \t 年龄 \t 电话 \t 身份证号 \t 房间类型  \t 收费");

System.out.println( num[i].b.names + "\t" + num[i].b.age + "\t" + num[i].b.tel + "\t" + num[i].b.IDnumber + "\t" + num[i].a.room + "\t" + num[i].a.price);

System.out.println("***查询完成!***");

pay+=(int)(num[i].a.price);

}

else System.out.println("程序出错!!");

}

System.out.println("应结费用:"+pay+"");

System.out.println("请确认后结算!");

}

}

6.退房

package 酒店管理系统;

public class tuifang {

int year;

int month;

int day;

public tuifang(int year,int month,int day){

this.year=year;

this.month=month;

this.day=day;

}

}

,

摘  要

进入大学的第二次课程设计中,我们小组选择了酒店住宿管理系统作为我们课程设计的课题,这个系统的主要目的在于利用面向对象程序设计来实现旅客的入住、退订、查阅、更换房间以及查询。这个程序总共4个类,以组长为中心,其他两个组员每个人分别负责基本的一个基础个类,由组长进行汇总,再做最后的修改、调整、编译、运行。在汇总的过程中,我们对住院的天数的这一情况设计方法产生了分歧,后来组合在一起之后,发现我们的程序漏洞百出,出现了很多问题,就开始一起进行进一步的修改与完善。从一开始毫无头绪一起慢慢琢磨、慢慢摸索,我们学到了很多,对酒店住宿管理系统也越来越熟悉。

在设计中,我们通过分工完成每一个模块,并将它们整合起来,完成了这次设计。在设计中我们利用了Eclipse这个平台来修改及实现我们的程序。充分利用了java的面向对象的特点,让我们的程序架构更清晰、系统更加简洁。

关键词: 入住 退订 更换 查询   java Eclipse



住宿管理系统课程设计报告

一、开发背景

酒店住宿是现在百姓热议的话题之一,常常会有需要住宿而没有房间的情况发生,为了优化住宿管理,提高酒店住宿流通的效率,我们小组在此背景下开发了这一款酒店住宿管理系统。

二、需求分析

一个酒店住宿管理系统,有两个主要的实体(旅客、管理员),和实现注册、分配房间、收费、管理的功能。旅客--姓名、年龄、编号)。

实现记账、收费、管理的功能我们放在测试类中实现。

三、模块说明

1、入住模块

功能描述:此模块的主要功能是实现旅客入住的信息登记和实现。

输入:姓名、年龄、身份证号码、电话号码。

输出:入住成功!

2、退订模块

功能描述: 此模块的主要功能是清空房间和结清费用、注销旅客信息

输入:旅客姓名

输出:旅客个人信息以及应结算的入住费用

3、查询模块

功能描述: 查询旅客信息

输入: 旅客姓名

输出: 住宿旅客信息或不存在此旅客

四、详细设计

1、passager类

类名:passager

继承父类:无

实现接口:无

概述:定义房间类,旅客信息

属性及说明:

String names;                                         //姓名

int ages ;                                             //年龄

int tel     ;                                          //电话

int  IDnumber;                                       //身份证号码

方法及说明:

public passenger(String names,int age,int tel,int IDnumber, int zhusustate)  //passager构造方法

2、room类

类名:room

继承父类:无

实现接口:无

概述:定义房间类,旅客所住房间及信息

属性及说明:

String room;                                       //房间

int roomnum;                                      //房间号

double price;                                       //价格

方法及说明:

public String getroom()                                //输出room

public void setroom(String room)                        //获得room

public int getroomnum()                               //输出roomnum

public void setroomnum(int roomnum)                   //获得roomnum

public double getPrice()                               //输出Price

public void setPrice(double price)                      //获得Price

Public room(String room,int roomnum,doubleprice)         // room构造方法

3、zhusu类

类名:zhusu

继承父类:无

实现接口:无

概述:对旅客类及房间类进行关联

属性及说明:

Room a;                                               //room类对象

Passager b;                                           //passager类对象

方法及说明:

public void zhusu(rooma,passager b)                        //zhusu构造方法

4、 tuifang类

类名:tuifang

继承父类:无

实现接口:无

概述:记录退房的旅客的退房时间

属性及说明:

int year;                                            //年

int month;                                          //月

int day;                                             //日

方法及说明:

public int time()                                       //计算天数

public tuifang(int year,int month,int day)                  //tuifang构造方法

5、 administrator类

类名:administrator

继承父类:无

实现接口:无

概述:定义入住、退房、查询功能

属性及说明:

zhusu num[] = new zhusu[24];

int i, j = 0;

int zhusustate = 0;

int[][]a = new int[3][6];

double[]price = {100.0, 300.0, 500.0};

int pay=0;                                         //初始化总花费

方法及说明:

public void zhusu()                                  //住宿

public void chaxun()                                 //查询

public void tuifang ()                                //退房

6、 test类

类名:Test

继承父类:无

实现接口:无

概述:实现住宿、退房、查询功能以及界面的运行

属性及说明:无

方法及说明:

public static void main(String[] ages)

五、系统实现

1、主界面

输入对应的编码,进入编码对应的模块。

2、住宿模块

输入:姓名、年龄、身份证号码、电话号码、房间类型。

输出:成功住宿的旅客

3、退房模块

输入:旅客姓名

输出:应结算的住宿费用

4、查询模块

输入:旅客姓名

输出:住宿旅客信息或不存在此人

总  结

团队结论:

课程设计说难也难,说容易也容易,说难,是因为这个任务很艰巨,无法靠一个人来实现,说容易,是因为我们团结在了一起,使任务细化,最后变成了小问题,这就和java中“面向对象”的思想一样,每个人都专门设计程序的一部分,最终再合并到一起。经过三个人的不懈努力,这个系统从起步到完善再到完美,最终大功告成。

团队心得:

经过这次课程设计,每个人对专业的认识以及自己心里的定位,心里多多少少有点深入的体会。


参考文献

[1]Dennis Kafura. Java面向对象程序设计教程[M]//JAVA面向对象程序设计教程. 2003.

[2]杨晓燕.基于应用的Java面向对象程序设计课程研究与教材建设[J].计算机教育, 2012(3):42-45.

[3]黄胜宇. Java面向对象编程的教学思路[J].科技资讯, 2010(17):203-203.

[4]邝砾,于美琪,冯文韬,等.基于层次考核的计算机类课程考试改革研究――以Java面向对象程序设计课程为例[J].计算机教育, 2017(1):62-66.

[5]杨雪. Java面向对象语言的教学探讨[J].家教世界, 2012(6):52-53.

[6]菊花. 使用综合案例贯穿Java程序设计课程教学的探索[J]. 内蒙古师范大学学报:教育科学版, 2010, 23(11):139-140.

[7]刘冬冬, 赵正平, 王秀友. Java程序设计课程实践教学改革探索[J]. 阜阳师范学院学报(自然科学版), 2014, 31(1):103-107.

[8]王国华, 刘新桥. 高职《Java程序设计》任务驱动分步迭代教学改革与实践[J]. 科技信息, 2012(3).

[9]刘才铭, 张雁. 结合实际案例的JAVA程序设计课程教学探索与实践[J]. 计算机光盘软件与应用, 2014(6):221-222.

[10]张璞, 夏英. 软件设计模式在Java程序设计课程教学中的应用研究[J]. 软件工程, 2017(7).


附录:系统源代码

1.主菜单

package 酒店管理系统;

import java.util.Scanner;

public class test {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

administrator a = new administrator();

int m = 1;                //输入0返回主菜单,否则退出系统

boolean isExit = false;   //标志用户是否退出系统:true为退出系统

do{

System.out.println( "****************");

System.out.println(" ***宾馆住宿管理系统*** ");

System.out.println(" 1、住宿 ");

System.out.println(" 2、退房 ");

System.out.println(" 3、查询");

System.out.println(" 4、退出系统 ");

System.out.println(" **************** ");

System.out.print(" 请选择:");

int choose = input.nextInt();  //记录用户选择的功能编号

switch(choose){

case 1://住宿

a.zhusu();

break;

case 2://退房

a.tuifang();

break;

case 3://查询

a.chaxun();

break;

case 4://退出系统

isExit = true;

break;

default:

isExit = true;

break;

}

if(!isExit){

System.out.print("输入0返回:");

m = input.nextInt();

}

else{

break;  //跳出

}

}while(m == 0);

}

}

2.住宿类

package 酒店管理系统;

public class zhusu {

room a;

passenger b;

int time;

zhusu(room a,passenger b,int time){

this.a =a;

this.b = b;

this.time = time;

}

}

3.房间类

package 酒店管理系统;

public class room {

String room; //房间

int roomnum; //房间号

double price; //价格

public String getRoom() {

return room;

}

public void setRoom(String room) {

this.room = room;

}

public int getRoomnum() {

return roomnum;

}

public void setRoomnum(int roomnum) {

this.roomnum = roomnum;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

public room(String room,int roomnum, double price){

super();

this.room=room;

this.roomnum=roomnum;

this.price=price;

}

}

4.旅客类

package 酒店管理系统;

public class passenger {

String names; //姓名

int age; //年龄

int tel; //电话

int IDnumber;//身份证号

public passenger(String names,int age,int tel,int IDnumber, int zhusustate){

super();

this.names=names;

this.age=age;

this.tel=tel;

this.IDnumber=IDnumber;

}

}

5.管理员类

package 酒店管理系统;

import java.util.*;

public class administrator {

zhusu num[] = new zhusu[24];

int i, j = 0;

int zhusustate = 0;

int[][]a = new int[3][6];

double[]price = {100.0, 300.0, 500.0};

int pay = 0;

Scanner input = new Scanner(System.in);

public void zhusu(){

System.out.println("请输入旅客姓名:");

String name= input.next();

System.out.println("请输入旅客的年龄:");

int age = input.nextInt();

System.out.println("请输入旅客电话:");

int tel = input.nextInt();

System.out.println("请输入旅客身份证号:");

int IDnumber = input.nextInt();

System.out.println("***房间***");

System.out.println("1、小包");

System.out.println("2、中包");

System.out.println("3、大包");

System.out.print("请选择旅客的房间:");

int room = input.nextInt();

String room1;

if(room == 1){

room1 = "小包";

}

else if(room == 2){

room1 = "中包";

}

else room1 ="大包";

for(i = 0; i<6; i++){

if(a[room-1][i]==0){

System.out.println("入住成功!");

zhusustate = 1;

break;

}

}

room bed = new room(room1, i, price[i]);

passenger ren = new passenger(name, age, tel, IDnumber, zhusustate);

int time = 0;

num[j++] = new zhusu(bed, ren, time);

}

public void chaxun(){

System.out.println("请输入旅客姓名:");

String name1 = input.next();

System.out.println(j);

for(i = 0; i<j; i++){

if(name1.equals(num[i].b