为了账号安全,请及时绑定邮箱和手机立即绑定

答答租车系统(第一次写)大家交流一下

标签:
Java

本程序参考了手记中很多朋友的代码,对各位朋友,与imooc的老师表示感谢。

先说一下自己目前认为不足之处:
1、整个实现程序几乎全部在mai函数下,没有对程序进行分块编写。
2、备注不是很详细

Car类

package com.chen;

public class Car implements ICarryPassage,ICarryGoods{

protected   int id;//声明车的序号
protected  String name;//声明车名
protected   int RentFee;//声明租车费用

/*
 *变量初始化
 */
public Car (int newid,String newname,int newRentFee){

    this.id=newid;
    this.name=newname;
    this.RentFee=newRentFee;

}

 /*
  * 设置 获得属性的方法
  */
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public int getRentFee() {
    return RentFee;
}
public void setRentFee(int rentFee) {
    RentFee = rentFee;
}
public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
/*
 *显示
 */
    public void show(){
        System.out.println("汽车信息为name:"+name+"RentFee:"+RentFee+"Id:"+id);
    }

@Override
public int getGoods() {
    // TODO Auto-generated method stub
    return 0;
}

@Override
public void setGoods(int newgoods) {
    // TODO Auto-generated method stub

}

@Override
public int getPerson() {
    // TODO Auto-generated method stub
    return 0;
}

@Override
public void setPerson(int newperson) {
    // TODO Auto-generated method stub

}

}

汽车类

package com.chen;

public class PassageCar extends Car implements ICarryPassage {

/*
 * 声明载人人数
 */
    private int person;

    /*
     *变量初始化
     */

    public PassageCar(int newid, String newname, int newRentFee,int newperson) {
        super(newid, newname, newRentFee);
        // TODO Auto-generated constructor stub
        this.setPerson(newperson);
    }

    public int getPerson() {
        return person;
    }

    public void setPerson(int person) {
        this.person = person;
    }

    public void show(){
        System.out.println("序号:"+this.getId()+"  汽车信息为 车名:"+this.getName()+"  每日租金:"+this.getRentFee()+"  最大载人人数"+this.getPerson());
    }

}

货车类

package com.chen;

public class truck extends Car implements ICarryGoods {

    private int goods;//声明变量载货量

    public truck(int newid, String newname, int newRentFee,int newgoods) {
        super(newid, newname, newRentFee);
        // TODO Auto-generated constructor stub
        this.goods=newgoods;
    }

    @Override
    public int  getGoods() {
        // TODO Auto-generated method stub
        return goods;
    }

    @Override
    public void setGoods(int newgoods) {
        // TODO Auto-generated method stub
        this.goods=newgoods;
    }

    public void show(){
        System.out.println("序号:"+this.getId()+"汽车信息为 车名:"+this.getName()+"每日租金:"+this.getRentFee()+"最大载货量"+this.getGoods());
    }

}

皮卡类

package com.chen;

public class PickUpTruck extends Car {

    private int goods;//声明变量载货量
    private int person;//声明最大载人数

    public PickUpTruck(int newid, String newname, int newRentFee,int newperson,int newgoods) {
        super(newid, newname, newRentFee);
        // TODO Auto-generated constructor stub
        this.goods=newgoods;
        this.person=newperson;
    }

    public int getGoods() {
        return goods;
    }

    public void setGoods(int goods) {
        this.goods = goods;
    }

    public int getPerson() {
        return person;
    }

    public void setPerson(int person) {
        this.person = person;
    }

    public void show(){
        System.out.println("序号:"+this.getId()+"汽车信息为 车名:"+this.getName()+"每日租金:"+this.getRentFee()+"最大载人人数"+this.getPerson()+"最大载货量(吨):"+this.getGoods());
    }

}

载货接口

package com.chen;
/*
 * 接口
 * 可载货重量  单位吨
 */
public interface ICarryGoods {
    int goods=0;
    int  getGoods();
    void setGoods(int newgoods);

}

载人接口

package com.chen;
/*
 * 接口
 * 可载人人数
 */
public interface ICarryPassage {

    int person=0;
    int  getPerson();
    void setPerson(int newperson);
}

实现函数

package com.chen;
import java.util.Scanner;
public class Tset {

    /**
     * //每次最多租车10辆
     * a    1进入系统0退出
     * num  租车数量
     * Car[]  车辆列表数组
     * day    租车天数,默认0
     * rentNum[]   所租车的序号
     * 
     * 
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
while(true){
        //定义车
        Car[] car={
            new PassageCar(1,"奥迪A4",500,4), 
            new PassageCar(2,"马自达6",400,4),
            new PickUpTruck(3,"皮卡雪6",450,4,2),
            new PassageCar(4,"金龙",800,20),
            new truck(5,"松花江",400,4),
            new truck(6,"依维柯",1000,20)  
        };  
        //主界面
        System.out.println("欢迎您使用答答租车系统:");
        System.out.println("是否要租车:1是 0否");
        Scanner in =new Scanner(System.in);
        int a=in.nextInt();
        if(a==1){
            System.out.println("您可租车的类型及其价目:");
            System.out.println("序号   汽车名称   租金  容量");

            for(int i=0;i<car.length;i++){
                car[i].show();
            }
            System.out.println("请输入您要租汽车的数量:");
            int num=in.nextInt();

            int rentNum[]=new int[10];//每次最多租车10辆

            for(int i=0;i<num;){
                i++;
                System.out.println("请输入您要租车的第"+i+"辆车序号:");
                rentNum[i]=in.nextInt();
            }

            int day=0;//默认租车0天
            System.out.println("请输入租车天数:");
            day=in.nextInt();

            int sumPerson=0,sumGoods=0,sumRentFee=0;
            System.out.println("您的账单为:");
            System.out.println("***可载人的车有:");

            for(int i=0;i<num;i++){
                if(car[rentNum[i]].getPerson()>0){
                    System.out.print(car[rentNum[i]].getName()+"\t");
                    sumPerson+=car[rentNum[i]].getPerson();
                }
            }
            System.out.println("总载客量为:"+sumPerson+"人");

            /*
             *计算载货量与总租金 
             */
            System.out.println("***可载货的车有:");
            for(int i=0;i<num;i++){
                if(car[rentNum[i]].getGoods()>0){
                    System.out.print(car[rentNum[i]].getName()+"\t");
                    sumGoods+=car[rentNum[i]].getGoods();
                }//计算载货量

                sumRentFee+=car[rentNum[i]].getRentFee();

            }
            System.out.println("总载货量为:"+sumGoods+"吨");

        System.out.println("租车时间为:"+day+"天");
        System.out.println("租车的总价格为:"+sumRentFee*day+"元");

        }

        //输入a等于0,退出
        else if(a==0){
            System.out.println("byebye!");
        }

        //输入a既不等于0,也不等于1
        else {
            System.out.println("输入有误,请重新输入。");
        }
}
}

}
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消