描述:假設有一個汽車租賃公司,擁有以下幾種車型:
要求與說明:
1、請先分析車輛的共同特徵並創建出父類交通工具,再分別通過繼承創建轎車和客車類,併爲其各自添加獨有的特徵,最後爲其添加計算租賃費用的方法;
2、再添加新的類(自己取名字),在該類中添加主方法實習租賃業務流程;
交通父類
public class JiaoTong {
private String leixing;
private String pingpai;
private String xinghao;
private int qian;
public JiaoTong(String leixing,String pingpai,String xinghao) {
this.leixing = leixing;
this.pingpai = pingpai;
this.xinghao = xinghao;
}
public String getLeixing() {
return leixing;
}
public void setLeixing(String leixing) {
this.leixing = leixing;
}
public String getPingpai() {
return pingpai;
}
public void setPingpai(String pingpai) {
this.pingpai = pingpai;
}
public String getXinghao() {
return xinghao;
}
public void setXinghao(String xinghao) {
this.xinghao = xinghao;
}
public int getQian() {
return qian;
}
public void setQian(int qian) {
this.qian = qian;
}
}
轎車類
public class Jiao extends JiaoTong {
public Jiao(String leixing,String pingpai,String xinghao ) {
super( leixing, pingpai, xinghao);
}
public String qian (int tian) {
if(getXinghao().equals("550i")) {
setQian(500);
}else if(getXinghao().equals("商務艙GL8")) {
setQian(600);
}else if(getXinghao().equals("林蔭大道")) {
setQian(300);
}
return "\n客戶您好!:您租的"+getPingpai()+getXinghao()+getLeixing()+"\n您需要支付的費用是:"+getQian()*tian;
}
}
客車類
public class Ke extends JiaoTong{
private int zuo;
public Ke(String leixing, String pingpai, String xinghao,int zuo) {
super(leixing, pingpai, xinghao);
this.zuo = zuo;
}
public int getZuo() {
return zuo;
}
public void setZuo(int zuo) {
this.zuo = zuo;
}
public String qian (int tian) {
if(getXinghao().equals("小型")) {
setQian(800);
}else if(getXinghao().equals("大型")) {
setQian(1500);
}
return"\n客戶您好!:您租的"+getPingpai()+getXinghao()+getLeixing()+"\n您需要支付的費用是:"+getQian()*tian;
}
}
測試類
import java.util.Scanner;
public class cg {
public static void main(String[] args) {
String chepai = "京BK"+(int)(Math.random()*9000+1000);
Scanner jiqi = new Scanner(System.in);
System.out.println("歡迎您來到汽車租賃公司!");
System.out.print("請輸入要租賃的天數");
int tian = jiqi.nextInt();
System.out.print("請輸入汽車類型(1、轎車 2、客車)");
int i = jiqi.nextInt();
String leixing=null;
String pingpai = null;
String xinghao=null ;
if(i==1) {
leixing = "轎車";
System.out.print("請輸入汽車品牌(1、寶馬 2、別克)");
int p = jiqi.nextInt();
if(p==1) {
pingpai = "寶馬";
System.out.print("請輸入汽車型號 1、550i:");
int x = jiqi.nextInt();
if(x==1) {
xinghao="550i";
}else {
System.out.println("不好意思,沒有");
return;
}
}else if(p==2) {
pingpai = "別克";
System.out.print("請輸入汽車型號 2、商務艙GL8 3、林蔭大道:");
int x = jiqi.nextInt();
if(x==2) {
xinghao="商務艙GL8";
}else if(x==3) {
xinghao="林蔭大道";
}else {
System.out.println("不好意思,沒有");
return;
}
}
System.out.println("分配給您的汽車牌號是:"+chepai);
Jiao j = new Jiao(leixing,pingpai,xinghao);
System.out.println(j.qian(tian));
}else if(i==2) {
leixing = "客車";
System.out.print("請輸入汽車品牌(1、金盃 2、金龍)");
int p = jiqi.nextInt();
if(p==1) {
pingpai="金盃";
}else if(p==2) {
pingpai="金龍";
}else {
System.out.println("不好意思,沒有");
return;
}
System.out.print("請輸入汽車座位數:");
int zuo =jiqi.nextInt();
if(zuo<=16) {
xinghao="小型";
}else if(zuo>16) {
xinghao="大型";
}
System.out.println("分配給您的汽車牌號是:"+chepai);
Ke k = new Ke(leixing,pingpai,xinghao,zuo);
System.out.println(k.qian(tian));
}else {
System.out.println("不好意思,沒有");
return;
}
}
}
感覺有很多改進的地方,望指點