亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

本課作業源碼

package?RentCar;
//父類
public?class?Car?{
	public?String?carName?;
	public??int?rentCash?;
	public??int?man?;
	public??int?Goods;	
}
package?RentCar;
//奧迪A4
public?class?Audi?extends?Car?{
	//初始化屬性
	public?String?carName?="奧迪A4";
	public??int?rentCash?=?500;
	public??int?man?=?4;
	public??int?Goods?=?0;
	/**
	?*?重寫toString方法
	?*/
	@Override
	public?String?toString()?{
		//?TODO?Auto-generated?method?stub
		return??carName+"\t"+rentCash+"元/天\t載人:"+man+"人";
	}
}
package?RentCar;
//皮卡雪
public?class?PickUp?extends?Car?{
	//初始化屬性值
	public?String?carName?="皮卡雪6";
	public??int?rentCash?=?450;
	public??int?man?=?4;
	public??int?Goods?=?2;
	/*
	?*?重寫toString方法
	?*/
	@Override
	public?String?toString()?{
		//?TODO?Auto-generated?method?stub
		return??carName+"\t"+rentCash+"元/天\t載人:"+man+"人??載貨:"+Goods+"噸";
	}
}
package?RentCar;
//金龍
public?class?JinLong?extends?Car?{
	//初始化屬性
		public?String?carName?="金龍";
		public??int?rentCash?=?800;
		public??int?man?=?20;
		public??int?Goods?=?0;
		/**
		?*?重寫toString方法
		?*/
		@Override
		public?String?toString()?{
			//?TODO?Auto-generated?method?stub
			return??carName+"\t"+rentCash+"元/天\t載人:"+man+"人";
		}
}
package?RentCar;
//松花江
public?class?SongHuaRiver?extends?Car?{
	//初始化屬性
		public?String?carName?="松花江";
		public??int?rentCash?=?400;
		public??int?man?=?0;
		public??int?Goods?=?4;
		/**
		?*?重寫toString方法
		?*/
		@Override
		public?String?toString()?{
			//?TODO?Auto-generated?method?stub
			return??carName+"\t"+rentCash+"元/天\t載貨:"+Goods+"噸";
		}
}
package?RentCar;
//依維柯
public?class?Iveco?extends?Car?{
	//初始化屬性
	public?String?carName?="依維柯";
	public??int?rentCash?=?1000;
	public??int?man?=?0;
	public??int?Goods?=?20;
	/**
	?*?重寫toString方法
	?*/
	@Override
	public?String?toString()?{
		//?TODO?Auto-generated?method?stub
		return??carName+"\t"+rentCash+"元/天?載貨:"+Goods+"噸";
	}
}
package?RentCar;
import?java.util.*;
public?class?Inital?{
	Scanner?scanner?=?new?Scanner(System.in);
	public?static?int?carNumber[][]?=?new?int[6][2];//定義一個二維數組類型的全局變量,來存儲每一類車的數量和租用天數
	public?static?void?main(String[]?args){
		Scanner?scanner?=?new?Scanner(System.in);
		Inital?ll?=new?Inital();
		System.out.println("歡迎使用答答租車系統\n請問您是否需要租車服務:1是????0否");
		int?choose;
		choose?=?scanner.nextInt();
		if(choose?==?1)
		{
			ll.showInfor();
			ll.choose();
			ll.count();
		}else{
			System.out.println("不好意思給您帶來不便");
			System.exit(0);
		}
	}
	public?void?showInfor()//輸出車輛信息
	{
		System.out.println("您可租車的類型及其價目表:");
		System.out.println("序號\t汽車名稱\t租金\t容量");
		System.out.println("1.\t"+new?Audi().toString());
		System.out.println("2.\t"+new?Mazda().toString());
		System.out.println("3.\t"+new?PickUp().toString());
		System.out.println("4.\t"+new?JinLong().toString());
		System.out.println("5.\t"+new?SongHuaRiver().toString());
		System.out.println("6.\t"+new?Iveco().toString());
	}
	
	
	public?void?choose()
	{
		int?ID?=?0;//車輛的序號?
		int?day?=0;//租用的天數
		int?carNum?=?0;//租用汽車總數量
		int?num?=0;//某類汽車的數量
		System.out.println("請輸入您要租用的汽車總數量:");
		carNum?=?scanner.nextInt();
		for(int?i?=?0;?i?<?7;?i++){
			System.out.println("請輸入你需要租用汽車的序號");
			ID?=?scanner.nextInt();
			System.out.println("請輸入需要租用本類型車的數量");
			num?=?scanner.nextInt();
			System.out.println("請輸入你需要租賃的天數");
			day?=?scanner.nextInt();
			switch(ID)
			{
			case?1:?
				carNumber[0][0]=?num;
				carNumber[0][1]?=?day;?break;
			case?2:
				carNumber[1][0]=?num;
				carNumber[1][1]?=?day;?break;
			case?3:
				carNumber[2][0]=?num;
				carNumber[2][1]?=?day;?break;
			case?4:
				carNumber[3][0]=?num;
				carNumber[3][1]?=?day;?break;
			case?5:
				carNumber[4][0]=?num;
				carNumber[4][1]?=?day;?break;
			case?6:
				carNumber[5][0]=?num;
				carNumber[5][1]?=?day;?break;
				default?:?
					System.out.println("您的輸入有誤");
					i?=?0;
					break;
			}
			int?m?=?0;
			for(int?j?=?0;?j?<?6;?j++){
				m?+=?carNumber[j][0];
			}
			if(m?>?carNum){
				System.out.println("輸入有誤,請再次訪問");
				System.exit(0);
			}else?if(m?==?carNum){
				break;
			}
				
		}
	}
	
	public?void?count()
	{
		int?manNumber?=?0;//總載客人數
		int?tannage??=?0;//總噸位
		int?counts?=?0;//總花銷
		System.out.println("您的賬單:");
		System.out.println("***可載人的車有:");
		for(int??i?=?0;i?<?4;?i++){
			if(carNumber[i][0]?>0)
			{
				if(i?==?0){
					System.out.print(new?Audi().carName+"\t");
					manNumber?=?manNumber?+?carNumber[i][0]*4;
					counts?=?counts?+?500*carNumber[i][1]*carNumber[i][0];
				}
				if(i?==?1){
					System.out.print(new?Mazda().carName+"\t");
					manNumber?=?manNumber?+?carNumber[i][0]*4;?
					counts?=?counts?+?400*carNumber[i][1]*carNumber[i][0];
				}
				if(i?==?2){
					System.out.print(new?PickUp().carName+"\t");
					manNumber?=?manNumber?+?carNumber[i][0]*4;
					tannage?=?tannage?+?carNumber[2][0]*2;
					counts?=?counts?+?450*carNumber[i][1]*carNumber[i][0];
				}	
				if(i?==?3){
					System.out.print(new?JinLong().carName+"\t");
					manNumber?=?manNumber?+?carNumber[i][0]*20;?
					counts?=?counts?+?800*carNumber[i][1]*carNumber[i][0];
				}
			}	
		}
		System.out.println("共載人:"+manNumber+"人");
		System.out.println("***載貨的車有:");
		if(carNumber[2][0]?>0){
			System.out.print(new?PickUp().carName+"\t");
		}
		if(carNumber[4][0]?>?0)
		{
			System.out.print(new?SongHuaRiver().carName+"\t");
			tannage?=?tannage?+?carNumber[4][0]*7;
			counts?=?counts?+?400*carNumber[4][1]*carNumber[4][0];
		}
		if(carNumber[5][0]?>?0)
		{
			System.out.print(new?Iveco().carName+"\t");
			tannage?=?tannage?+?carNumber[5][0]*20;
			counts?=?counts?+?1000*carNumber[5][1]*carNumber[5][0];
		}
		System.out.println("共載貨:"+tannage+"噸");
		System.out.println("***租車總價格:"+counts+"元");	
	}
}

看了置頂的代碼,哭,封裝和分類繼承的好麻煩 ? T T

我的作業中用一種比較簡單的方法,提供了一定租車數量下的多種選擇搭配的方法。希望指導一下,編碼風格有什么不足的地方

正在回答

1 回答

只要肯去想 都是好的 ?條條道路通羅馬

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第二季 升級版
  • 參與學習       531222    人
  • 解答問題       6327    個

課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙

進入課程

本課作業源碼

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號