為什么我的代碼這么多,,,,
//汽車類
package?com.oop;
public?class?Auto?{
private?int?id;
private?String?name;
private?int?perRent;
public?int?getId()?{
return?id;
}
public?void?setId(int?id)?{
this.id?=?id;
}
public?String?getName()?{
return?name;
}
public?void?setName(String?name)?{
this.name?=?name;
}
public?int?getPerRent()?{
return?perRent;
}
public?void?setPerRent(int?perRent)?{
this.perRent?=?perRent;
}
public?Auto(int?id,?String?name,?int?perRent)?{
this.id?=?id;
this.name?=?name;
this.perRent?=?perRent;
}
public?Auto()?{
}
}//小汽車客車類
package com.oop;
public class Car extends Auto {
private int manned;
public int getManned() {
return manned;
}
public void setManned(int manned) {
this.manned = manned;
}
public Car() {
super();
}
public Car(int id, String name, int perRent,int manned) {
super(id, name, perRent);
this.manned=manned;
}
}
//卡車類
package com.oop;
public class Truck extends Auto {
private int load;
public int getLoad() {
return load;
}
public void setLoad(int load) {
this.load = load;
}
public Truck() {
super();
// TODO 自動生成的構造函數存根
}
public Truck(int id, String name, int perRent,int load) {
super(id, name, perRent);
this.load=load;
// TODO 自動生成的構造函數存根
}
}
//皮卡類
package com.oop;
public class Packup extends Auto {
private int manned;
private int load;
public int getManned() {
return manned;
}
public void setManned(int manned) {
this.manned = manned;
}
public int getLoad() {
return load;
}
public void setLoad(int load) {
this.load = load;
}
public Packup() {
super();
// TODO 自動生成的構造函數存根
}
public Packup(int id, String name, int perRent,int manned,int load) {
super(id, name, perRent);
this.manned=manned;
this.load=load;
// TODO 自動生成的構造函數存根
}
}
//汽車庫類
package com.oop;
public class AutoDemo {
Auto []auto=new Auto[10];
public ? AutoDemo(){
Auto auto1=new Car(1,"奧迪A4", 500, 4);
Auto auto2=new Car(2,"馬自達6",400,4);
Auto auto3=new Packup(3,"皮卡雪6",450,4,2);
Auto auto4=new Car(4,"金龍", 800, 20);
Auto auto5=new Truck(5,"松花江",400,4);
Auto auto6=new Truck(6,"依維柯", 1000, 20);
auto[0]=auto1;
auto[1]=auto2;
auto[2]=auto3;
auto[3]=auto4;
auto[4]=auto5;
auto[5]=auto6;
}
public void show(){
for(int i=0;i<auto.length;i++){
if(auto[i]instanceof Car)
System.out.println(auto[i].getId()+"\t"+auto[i].getName()+"\t"+auto[i].getPerRent()+"\t"+"載人:"+((Car) auto[i]).getManned());
else if(auto[i]instanceof Truck)
System.out.println(auto[i].getId()+"\t"+auto[i].getName()+"\t"+auto[i].getPerRent()+"\t"+"載貨"+((Truck) auto[i]).getLoad());
else if(auto[i]instanceof Packup)
System.out.println(auto[i].getId()+"\t"+auto[i].getName()+"\t"+auto[i].getPerRent()+"\t"+"載人:"+((Packup) auto[i]).getManned()+"載貨"+((Packup) auto[i]).getLoad());
continue;
}
}
}
//計算類
package com.oop;
import java.util.Scanner;
public class Count {
int number;
int autoid1;
int autoid2;
int day;
public void Flow(){
System.out.println("請輸入要租汽車的數量");
Scanner input=new Scanner(System.in);
? ? number=input.nextInt();
System.out.println("請輸入第一輛車的序號");
autoid1=input.nextInt();
System.out.println("請輸入第二輛車的序號");
autoid2=input.nextInt();
System.out.println("請輸入租車天數");
day=input.nextInt();
}
public void show(){
AutoDemo a=new AutoDemo();
int rent=(a.auto[autoid1-1].getPerRent()+a.auto[autoid2-1].getPerRent())*day;
System.out.println("您的賬單:");
System.out.println("可載人的有");
if(a.auto[autoid1-1] instanceof Car||a.auto[autoid1-1] instanceof Packup){
System.out.println(a.auto[autoid1-1].getName());
}
if(a.auto[autoid2-1] instanceof Car||a.auto[autoid2-1] instanceof Packup){
System.out.println(a.auto[autoid2-1].getName());
}else{
System.out.println("無");
}
System.out.println();
System.out.println("載貨的有");
if(a.auto[autoid1-1] instanceof Truck||a.auto[autoid1-1] instanceof Packup){
System.out.println(a.auto[autoid1-1].getName());
}
if(a.auto[autoid2-1] instanceof Truck||a.auto[autoid2-1] instanceof Packup){
System.out.println(a.auto[autoid2-1].getName());
}else{
System.out.println("無");
}
System.out.println("總價為"+rent);
}
}
//測試類
package com.oop;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("歡迎使用噠噠租車系統");
Scanner input=new Scanner(System.in);
System.out.println("您是否要租車1.是 ?2.否");
if(input.nextInt()==1){
System.out.println("您可租車的類型及其價目表:");
System.out.println("序號 ? ? ? ? ? ? ? 汽車名稱 ? ? ? ? ? ?租金 ? ? ? ? ? ? ? ? 容量");
AutoDemo ad=new AutoDemo(); ? ? ? ?
ad.show();
Count ct=new Count();
ct.Flow();
ct.show();
}
else{
System.out.println("謝謝使用");
}
}
}
2015-10-17
public??class?Car?{ private?int?carNumber; private?String?carName; private?int?carRentMoney; public?int?getCarNumber()?{ return?carNumber; } public?void?setCarNumber(int?carNumber)?{ this.carNumber?=?carNumber; } public?String?getCarName()?{ return?carName; } public?void?setCarName(String?carName)?{ this.carName?=?carName; } public?int?getCarRentMoney()?{ return?carRentMoney; } public?void?setCarRentMoney(int?carRentMoney)?{ this.carRentMoney?=?carRentMoney; } } public?class?passengerCar?extends?Car?{ private?int?CarCapacity; public?passengerCar(int?carNumber,String?carName,int?carRentMoney,int?carCapacity){ this.setCarNumber(carNumber); this.setCarName(carName); this.setCarRentMoney(carRentMoney); CarCapacity?=?carCapacity; } public?int?getCarCapacity()?{ return?CarCapacity; } public?void?setCarCapacity(int?carCapacity)?{ CarCapacity?=?carCapacity; } }public?class?pickUp?extends?Car?{ private?int?CarCapacity; private?int?CarCarry; public?pickUp(int?carNumber,String?carName,int?carRentMoney,int?CarCapacity,int?CarCarry){ this.setCarNumber(carNumber); this.setCarName(carName); this.setCarRentMoney(carRentMoney); this.CarCapacity?=?CarCapacity; this.CarCarry?=?CarCarry; } public?int?getCarCapacity()?{ return?CarCapacity; } public?void?setCarCapacity(int?carCapacity)?{ CarCapacity?=?carCapacity; } public?int?getCarCarry()?{ return?CarCarry; } public?void?setCarCarry(int?carCarry)?{ CarCarry?=?carCarry; } }public?class?trunkCar?extends?Car?{ ????private?int?CarCarry; ???? ????public?trunkCar(int?carNumber,String?carName,int?carRentMoney,int?CarCarry){ ????????this.setCarNumber(carNumber); ????????this.setCarName(carName); ????????this.setCarRentMoney(carRentMoney); ????????this.CarCarry?=?CarCarry; ????????} ????public?int?getCarCarry()?{ ????????return?CarCarry; ????????} ????public?void?setCarCarry(int?carCarry)?{ ????????CarCarry?=?carCarry; ????????} }import?java.util.Scanner; public?class?Test?{ /** *?@param?args */ ????public?static?void?main(String[]?args)?{ ????????//?TODO?Auto-generated?method?stub ????????System.out.println("歡迎使用答答租車系統:"); ????????System.out.println("你是否要租車???1是????2否"); ????????Scanner?s?=?new?Scanner(System.in); ????????int??k?=?s.nextInt(); ????????if(k?==?1){ ????????????System.out.println("您可租車的類型及其價格表:"); ????????????Car?RentCar[]?=?{new?passengerCar(1,"奧迪A4",500,4),new?passengerCar(2,"馬自達6",400,4),new?pickUp(3,"皮卡雪6",450,4,2),new?passengerCar(4,"金龍",800,20),new?trunkCar(5,"松花江",400,4),new?trunkCar(6,"依維柯",1000,20)}; ????????????System.out.println("序號"+"\t"+"汽車名稱"+"\t"+"\t"+"租金"+"\t"+"容量"); ????????for(int?i?=?0;?i?<?6;?i++){ ????????????////若RentCar[i]它是客車類型的實例,則打印出客車應該有的屬性值,這里注意強轉,否則不會出現 ????????????????if(RentCar[i]?instanceof?passengerCar){ ????????????????????System.out.println(RentCar[i].getCarNumber()+"\t"+RentCar[i].getCarName()+"\t"+"\t"+RentCar[i].getCarRentMoney()+"/天"+"\t"+"載人:"+((passengerCar)RentCar[i]).getCarCapacity()+"人");//將Car類型強制轉換成passengerCar類,得到passegerCard的屬性 ????????????????????????} ????????????if(RentCar[i]?instanceof?pickUp){ ????????????????????System.out.println(RentCar[i].getCarNumber()+"\t"+RentCar[i].getCarName()+"\t"+"\t"+RentCar[i].getCarRentMoney()+"/天"+"\t"+"載人:"+((pickUp)RentCar[i]).getCarCapacity()+"人??載貨:"+((pickUp)RentCar[i]).getCarCarry()+"噸"); ????????????????????????} ????????????if(RentCar[i]?instanceof?trunkCar){ ????????????????????System.out.println(RentCar[i].getCarNumber()+"\t"+RentCar[i].getCarName()+"\t"+"\t"+RentCar[i].getCarRentMoney()+"/天"+"\t"+"載人:"+((trunkCar)RentCar[i]).getCarCarry()+"噸"); ????????????????????????} ????????????} ?????????????System.out.println("請輸入您要租汽車的數量:"); ????????????????//已經有Scanner對象,直接調用 ????????????int?totalNum?=?s.nextInt(); ????????????int?sum?=?0; ???????????? ????????????for(int?j?=?1;?j?<=?totalNum;?j++){ ????????????????System.out.println("請輸入第"+j+"輛車的序號"); ????????????????int?q?=?s.nextInt(); ????????????????switch(q){ ????????????????????case?1: ????????????????????RentCar[0].getCarRentMoney(); ????????????????????case?2: ????????????????????RentCar[1].getCarRentMoney(); ????????????????????case?3: ????????????????????RentCar[2].getCarRentMoney(); ????????????????????case?4: ????????????????????RentCar[3].getCarRentMoney(); ????????????????????case?5: ????????????????????RentCar[4].getCarRentMoney(); ????????????????????case?6: ????????????????????RentCar[5].getCarRentMoney(); ????????????????} ????????????sum?=?sum?+?RentCar[q-1].getCarRentMoney(); ???????????} ???????????????System.out.println("請輸入租車的天數:"); ????????????????int?day?=?s.nextInt(); ????????????????System.out.println("您的賬單:"); ????????????????System.out.println(sum?*?day); ????????} ??????} }