《Java小程序——汽车租赁》
1.描述:刚学Java写的小程序,用到类的继承,多态,abstract抽象方法。
2.工具:eclipse.exe
3.功能:选择子类(轿车 / 客车)
选择车型(轿车车型 / 客车车型)
根据天数计算租金(用抽象方法)
/*****************************************************
Author:Ivan Version:0.1 Date:
File name:MotoVehicle.java
Description:父类
*****************************************************/
package com.jsetc_rental.www;
public abstract class MotoVehicle {
protected int No; //车牌号
protected String Brand; //品牌
protected String color; //颜色
protected int Mileage; //里程
protected String models;
protected int rental;
public void print()
{
System.out.println("您选择的是 "+models+" ,日租费 "+rental+" (元/天)");
}
public abstract void CalcRent(int days);
}
/*****************************************************
Author:Ivan Version:0.1 Date:
File name:Bus.java
Description:子类
*****************************************************/
package com.jsetc_rental.www;
public class Bus extends MotoVehicle{
public int SeatCount;
public void CalcRent(int days)
{
System.out.println("这是客车的日租金");
System.out.println("租金为: "+days*rental+" 感谢您的光临!");
}
}
/*****************************************************
Author:Ivan Version:0.1 Date:
File name:Car.java
Description:子类
*****************************************************/
package com.jsetc_rental.www;
public class Car extends MotoVehicle{
public String Type;
public void CalcRent(int days)
{
System.out.println("这是轿车的日租金");
System.out.println("租金为: "+days*rental+" 感谢您的光临!");
}
}
/*****************************************************
Author:Ivan Version:0.1 Date:
File name:Main.java
Description:主函数
*****************************************************/
package com.jsetc_rental.www;
import java.util.Scanner;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int choose;
System.out.println("欢迎来到租车网");
System.out.println("请选择您想租赁车的类型:");
System.out.println("(1.轿车 2.客车)");
choose = sc.nextInt();
if(choose == 1)
{
MotoVehicle car = new Car();
System.out.println("请选择车辆品牌:");
System.out.println("1.别克商务舱GL8 2.宝马550i 3.别克林荫大道");
choose = sc.nextInt();
switch (choose)
{
case 1:
car.models = "别克商务舱GL8";car.rental = 600;
car.print();
break;
case 2:
car.models = "宝马550i";car.rental = 500;
car.print();
break;
case 3:
car.models = "别克林荫大道";car.rental = 300;
car.print();
break;
}
System.out.println("请输入您想租赁天数:");
int day = sc.nextInt();
car.CalcRent(day);
}
else if(choose == 2)
{
MotoVehicle car = new Bus();
System.out.println("请选择车辆品牌:");
System.out.println("1.金杯(<=16座) 2.金龙(>16座)");
choose = sc.nextInt();
switch (choose)
{
case 1:
car.models = "金杯(<=16座)";car.rental = 800;
car.print();
break;
case 2:
car.models = "金龙(>16座)";car.rental = 1500;
car.print();
break;
}
System.out.println("请输入您想租赁天数:");
int day = sc.nextInt();
car.CalcRent(day);
}
}
}