Java综合项目分析

来源:互联网 发布:太把自己当回事 知乎 编辑:程序博客网 时间:2024/06/05 08:45

package com.imooc.test7;
import java.util.Scanner;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        //创建车辆信息
        Car[] car = {new PessagerCar("奥迪A4", 500, 4),new CargoCar("松花江", 400, 4),new PukiCar("皮卡雪6", 450, 4,2)};
        System.out.println("欢迎来到租车地带!");
        System.out.println("请问是否需要租车:1是 2否");
        
        //显示租车信息
        Scanner in = new Scanner(System.in);
        int choice = in.nextInt();
        
        while(choice != 2 || choice !=1){
            //如果输入错误,非0/1,则重新输入
            
            if(choice == 1){
                System.out.println("你可租车的类型及价目表:");
                System.out.println(""+"序号" + "\t" + "汽车名称" + "\t" + "租金" + "\t" + "容量");
                
                int i =0;
                for(Car curCar:car){ //定义一个curCar对象遍历car数组
                    i++;
                    if(curCar instanceof PessagerCar){
                        System.out.println("" + i + "\t" + curCar.getName() + "\t"  + curCar.getRent() + "元/辆""\t"+ ((PessagerCar) curCar).getManned() + "人");
                    //car[i].show();  //显示租车信息及序号
                        }
                    if(curCar instanceof CargoCar){
                        System.out.println("" + i + "\t" + curCar.getName() + "\t" + curCar.getRent() + "元/辆" +"\t"+ ((CargoCar) curCar).getCargo() + "吨");
                        }
                    if(curCar instanceof PukiCar){
                        System.out.println("" + i + "\t" + curCar.getName() + "\t" + curCar.getRent() + "元/辆" +"\t"+ ((PukiCar) curCar).getManned() + "人" + ((PukiCar) curCar).getCargo() + "吨");
                        }
                }
                break;
            }else{
                System.out.println("谢谢你的光临,再见!");
            }
        }
        
        //租车数量
        System.out.println("请输入你需要租车的数量:");
        int carnum = in.nextInt();
        Car[] choicecar = new Car[carnum]; //将选择的序号存入数组
        for(int i = 0;i < carnum ;i++){
            System.out.println("请输入第"+ (i+1) +"辆车的序号");
            int num = in.nextInt();
            choicecar[i] = car[num-1];
        }
        
        //租车天数
        System.out.println("请输入租车天数");
        int rentday = in.nextInt();
        
        //计算并显示账单
        System.out.println("*********************您的账单如下:**********************");
        int allmoney = 0;//总的租金
        
        System.out.println(">>>>>>>>>>>>>>您总共要租借"+rentday+"天");
        
        //计算总载客数载货量
        int allPesCar = 0;  //总载人数
        int allCargo = 0;   //总载货量
        
        for(int i=0; i<choicecar.length ; i++){
            if(choicecar[iinstanceof PessagerCar){
                allPesCar += ((PessagerCar) choicecar[i]).getManned();
                allmoney += ((PessagerCar) choicecar[i]).getRent();
            }
            if(choicecar[iinstanceof CargoCar){
                allCargo += ((CargoCar) choicecar[i]).getCargo();
                allmoney += ((CargoCar) choicecar[i]).getRent();
            }
            if(choicecar[iinstanceof PukiCar){
                allPesCar += ((PukiCar) choicecar[i]).getManned();
                allCargo +=((PukiCar)choicecar[i]).getCargo();
                allmoney += ((PessagerCar) choicecar[i]).getRent();
                allmoney += ((CargoCar) choicecar[i]).getRent();
            }
        }
        
        //输出清单
        System.out.println(">>>>>>>您所要租借的总载客量为: " + allPesCar + "人\t" + "总载货量为:" + allCargo + "吨");
        int allRent = allmoney*rentday;   //总价
        System.out.println(">>>>>>>您总共需要支付:  " + allRent  + "  元");
        System.out.println("谢谢光临租车地带,欢迎下次光临!");
       in.close();
    }
}
package com.imooc.test7;
public class PukiCar extends Car{      //皮卡子类(既能载物又可以载人)
    public  String name;
    public  int rent;
    private int Manned;
    private double Cargo;
    
    //构造方法
    public PukiCar(String nameint rent,int Manned,double Cargo) {
        this.name = name;
        this.rent = rent;
        this.Manned = Manned;
        this.Cargo = Cargo;
    }
    public int getManned() {
        return Manned;
    }
    public void setManned(int manned) {
        Manned = manned;
    }
    public double getCargo() {
        return Cargo;
    }
    public void setCargo(double cargo) {
        Cargo = cargo;
    }
//    //显示选车列表
//    @Override
//    public void show() {
//        // TODO Auto-generated method stub
//        System.out.println(getName()+"\t"+getRent()+"元/天"+"\t"+"载货:"+getCargo()+"吨"+"载客"+getManned()+"人");
//    }
}

package com.imooc.test7;
public class PessagerCar extends Car {     //载客子类
    public  String name;
    public  int rent;
    private int Manned;  //载人数
    //构造方法
    public PessagerCar(String nameint rentint manned) {
        this.name = name;
        this.rent = rent;
        this.Manned = manned;
    }
    public int getManned() {
        return Manned;
    }
    public void setManned(int manned) {
        this.Manned = manned;
    }
        
}
package com.imooc.test7;
public class CargoCar extends Car {  //载货子类
    
    public  String name;
    public  int rent;
    private double Cargo//载货量
    //构造方法
    public CargoCar(String nameint rentdouble Cargo) {
        this.name = name;
        this.rent = rent;
        this.Cargo = Cargo;
    }
    public double getCargo() {
        return Cargo;
    }
    public void setCargo(double cargo) {
        this.Cargo = cargo;
    }
}
package com.imooc.test7;
public class Car {    //父类
    
    //定义共有的参数,名字和租金
    public  String name;
    public  int rent;
    
    //public abstract void show();  //定义抽象方法,在子类继承中重写,显示选车列表中的参数
    //返回参数值
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getRent() {
        return rent;
    }
    public void setRent(int rent) {
        this.rent = rent;
    }    
}
程序不够完善,希望大家可以帮助改正,O(∩_∩)O谢谢
0 0
原创粉丝点击