java学习之路1--酒店管理系统

酒店管理系统

题目概括

使用java语言编写一个有订房,退房,查房功能的一个简易酒店管理系统

实现思路

房间类来存储房间信息,酒店类实现对房间数据修改的方法,测试类调用酒店类的方法实现查房,退房,订房操作。

代码实现

房间类:

package my.hotel;

//结构体(房间)
public class Room {
		private String type;
		private int roomname;
		private boolean isbook;
		
		//构造函数
		public Room(String type,int roomname,boolean isbook) {
			this.type=type;
			this.roomname=roomname;
			this.isbook=isbook;
		}
		
		public String gettype() {
			return type;
		}
		
		public int getroomname() {
			return roomname;
		}
		
		public boolean getisbook() {
			return isbook;
		}
		
		public void totype(String type) {
			this.type=type;
		}
		
		public void toroomname(int roomname) {
			this.roomname=roomname;
		}
		
		public void toisbook(boolean isbook) {
			this.isbook=isbook;
		}
		
		
}

酒店类:

package my.hotel;

public class Myhotel {
		private Room rooms[];

		
		public Myhotel() {
			rooms=new Room[9];
			for(int i=0;i<=8;i++)
			{
				if(i<=2)
				rooms[i]=new Room("标准间",100+i,false);
				if(i>2&&i<=5)
				rooms[i]=new Room("单人间",100+i,false);
				if(i>5&&i<=8)
			    rooms[i]=new Room("豪华间",100+i,false);
			}
		}
		
		//预定酒店
		public void book(int roomname) {
			for(int i=0;i<=8;i++)
			{
				if(roomname==rooms[i].getroomname())
				{
					if(rooms[i].getisbook()==false)
					{
						rooms[i].toisbook(true);
						System.out.println("book successed,your roomname is"+roomname+" and the type is "+rooms[i].gettype());
					}
					else
					{
						System.out.println("sorry,this roomname is already booked!");
					}
				}	
			}
		}
		
		//退房
		public void rebook(int roomname) {
			for(int i=0;i<=8;i++)
			{
				if(roomname==rooms[i].getroomname())
				{
					rooms[i].toisbook(false);
				}
			}
		}
		
		//查房(按类型查有无空余房间)
		public void cheak(String type) {
			for(int i=0;i<=8;i++)
			{
				if(type.equals(rooms[i].gettype()))
				{
					if(rooms[i].getisbook()==false)
					System.out.println("you can book "+rooms[i].getroomname());
				}
			}
		}
		
}

测试类:

package my.hotel;

import java.util.Scanner;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 Myhotel h;
		h=new Myhotel();
while(true) {
			System.out.println("请输入你想要进行的功能。");
			System.out.println("1.为订房,2.为退房,3.为按房间类型查找空余房间号。");
			Scanner in=new Scanner(System.in);
			

			
			int choice=in.nextInt();
			
			if(choice==1) {
				System.out.println("请输入你的房间号.");
				int roomname=in.nextInt();
				h.book(roomname);
			}
			
			if(choice==2) {
				System.out.println("请输入你的房间号.");
				int roomname=in.nextInt();
				h.rebook(roomname);
			}
			
			if(choice==3) {
				System.out.println("寻找标准间按1,单人间按2,豪华间按3");
				int choose=in.nextInt();
				if(choose==1)
				{
					h.cheak("标准间");
				}
				if(choose==2)
				{
					h.cheak("单人间");
				}
				if(choose==3)
				{
					h.cheak("豪华间");
				}
			}
			
			
}
	}
}

收获

java中this和super的用法:
this用于同类之间的构造函数调用,并且有取消二义性(用this来指明当前对象,针对重名的情况下使用)。
super用于对基类(父类)的构造函数调用。
详细见网站:

https://www.cnblogs.com/yyy6/p/8976584.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值