以前只学过C,刚看完Java两季,第一次写这么长程序,希望能和大家互相交流一下。

创建父类Car

public class Car {

String name;

int num;

double rentPrice;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

}

创建支持载货的接口ICargoCapacity

public interface ICargoCapacity {

public double CargoCapacity();

}

创建支持载人的接口IPeopleCapacity

public interface IPeopleCapacity {

public int PeopleCapacity();

}

创建子类Audi

public class Audi extends Car implements IPeopleCapacity {

int num=1;

String name="奥迪A4";

double rentPrice=500;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

@Override

public int PeopleCapacity() {

// TODO Auto-generated method stub

int peopleCapacity=4;

return peopleCapacity;

}

public String toString(){

return num+". "+name+" "+rentPrice+"/天 载人:"+this.PeopleCapacity()+"人";

}

}

创建子类Mazda

public class Mazda extends Car implements IPeopleCapacity {

int num=2;

String name="马自达6";

double rentPrice=400;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

@Override

public int PeopleCapacity() {

// TODO Auto-generated method stub

int peopleCapacity=4;

return peopleCapacity;

}

public String toString(){

return num+". "+name+" "+rentPrice+"/天 载人:"+this.PeopleCapacity()+"人";

}

}

创建子类Pika

public class Pika extends Car implements IPeopleCapacity, ICargoCapacity {

int num=3;

String name="皮卡雪6";

double rentPrice=450;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

@Override

public double CargoCapacity() {

// TODO Auto-generated method stub

double cargoCapacity=2;

return cargoCapacity;

}

@Override

public int PeopleCapacity() {

// TODO Auto-generated method stub

int peopleCapacity=4;

return peopleCapacity;

}

public String toString(){

return num+". "+name+" "+rentPrice+"/天 载人:"+this.PeopleCapacity()+"人"+"载货:"+this.CargoCapacity()+"吨";

}

}

创建子类Jinlong

public class Jinlong extends Car implements IPeopleCapacity {

int num=4;

String name="金龙";

double rentPrice=800;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

@Override

public int PeopleCapacity() {

// TODO Auto-generated method stub

int peopleCapacity=20;

return peopleCapacity;

}

public String toString(){

return num+". "+name+" "+rentPrice+"/天 载人:"+this.PeopleCapacity()+"人";

}

}

创建子类Songhuajiang

public class Songhuajiang extends Car implements ICargoCapacity {

int num=5;

String name="松花江";

double rentPrice=400;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

@Override

public double CargoCapacity() {

// TODO Auto-generated method stub

int cargoCapacity=4;

return cargoCapacity;

}

public String toString(){

return num+". "+name+" "+rentPrice+"/天 载货:"+this.CargoCapacity()+"吨";

}

}

创建子类Yiweike

public class Yiweike extends Car implements ICargoCapacity {

int num=6;

String name="依维柯";

double rentPrice=1000;

public String getName() {

return name;

}

public double getRentPrice() {

return rentPrice;

}

@Override

public double CargoCapacity() {

// TODO Auto-generated method stub

double cargoCapacity=20;

return cargoCapacity;

}

public String toString(){

return num+". "+name+" "+rentPrice+"/天 载货:"+this.CargoCapacity()+"吨";

}

}

主程序

import java.util.Scanner;

public class Initial {

//打印租车列表

public static void Print(Car car[]){

System.out.println("您可租车的类型及价目表:\n序号 汽车名称 租金 容量");

for(int i=0;i

System.out.println(car[i].toString());

}

System.out.println("请输入您要租汽车的数量:");

}

public static void main(String[] args) {

System.out.println("欢迎使用答答租车系统:\n您是否要租车:1是 0否");

Scanner input=new Scanner(System.in);

if(input.nextInt()==1){

Car car[]={new Audi(),new Mazda(),new Pika(),new Jinlong(),new Songhuajiang(),new Yiweike()};

Print(car);

getCar(car);

}

else{

input.close();

System.out.println("退出系统");

}

}

//统计所选车的信息

public static void getCar(Car car[]){

Scanner input=new Scanner(System.in);

int totalPeople=0;

double totalCargo=0,totalPrice=0;

String peopleCar=" ",cargoCar=" ";

for(int i=1,carNums=input.nextInt();i<=carNums;i++){

System.out.println("请输入第"+i+"辆车的序号:");

int Num=input.nextInt();

//通过接口判断该车能否载人

if(car[Num-1] instanceof IPeopleCapacity){

totalPeople+=((IPeopleCapacity)car[Num-1]).PeopleCapacity();

peopleCar=peopleCar+car[Num-1].getName()+" ";

}

//通过接口判断该车能否载货

if(car[Num-1] instanceof ICargoCapacity){

totalCargo+=((ICargoCapacity)car[Num-1]).CargoCapacity();

cargoCar=cargoCar+car[Num-1].getName()+" ";

}

totalPrice+=car[Num-1].getRentPrice();

}

System.out.println("请输入租车天数:");

totalPrice*=input.nextInt();

input.close();

System.out.println("您的账单:\n***可载人的车有:\n"+peopleCar+"\t共载人:"+totalPeople+"人");

System.out.println("***载货的车有:\n"+cargoCar+"\t共载货:"+totalCargo+"吨");

System.out.println("***租车总价格:"+totalPrice+"元");

}

}

java简单租车系统 慕课手记_Java租车系统(新手)相关推荐

  1. java简单租车系统 慕课手记_java小项目,租车系统

    这学期要学java,本以为暑假学windows程序设计的,没想到一些事情耽误了 ,只能回来再补了,因为学过c++,面向对象的三大特性什么的,c++比java难一点,所以学java感觉还比骄轻松,下面就 ...

  2. java简单通讯录的实现02person类_Java自定义类加载器实现不同版本的类加载

    一 什么是类隔离技术 只要你 Java 代码写的足够多,就一定会出现这种情况:系统新引入了一个中间件的 jar 包,编译的时候一切正常,一运行就报错:java.lang.NoSuchMethodErr ...

  3. java简单通讯录的实现02person类_java实现简单控制台通讯录

    通过主菜单对各级子菜单进行控制,并实现添加记录,查找记录,删除记录,修改记录,排序记录,以及退出系统功能的实现.一共六部分的功能模块. 上面的图就是每个模块具有的功能,而且还用到了正则表达式判断输入的 ...

  4. java获取当前系统时间毫秒_java 获取当前系统时间简写 | 学步园

    本文是集合各位网友的经典,在加上我的理解,后续会不断完善. 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); System.out ...

  5. java简单通讯录的实现02person类_Java中Math类的简单介绍

    我想对于Math类大家一定很熟悉了,是Java提供的一个用来进行简单数学运算的工具类.对于Math类来说,常用的方法有: 加法 public static int addExact(int x, in ...

  6. java微博系统源码_JAVA仿微博系统(JAVA毕业设计含源码和运行教程)

    前言 课设毕设源码收集已上传到github,包括:C,C#,C++,JAVA,PHP 等源码,更多源码在整理中.地址:https://github.com/52JDK/Source-Collectio ...

  7. java从数据库中获取当前时间_JAVA获取当前系统时间(包含时分秒)插入数据库...

    网上找到好多方法,但是貌似都是不准确,当我看到这个我内牛满面 Timestamp d= new Timestamp(System.currentTimeMillis()); //获取系统时间直接转换成 ...

  8. java调用系统时间函数_JAVA获得当前系统时间

    一. 获取当前系统时间和日期并格式化输出: import java.util.Date; import java.text.SimpleDateFormat; public class NowStri ...

  9. java程序设计唐大仕慕课答案_Java程序设计_中国大学MOOC(慕课)

    1. Java是什么样的语言? 答:Java语言是一门用途广泛的.面向对象的语言.Java语言可以编写桌面应用.手机应用及企业应用.Java简洁优雅,易于学习. 2. 没有学过编程,能学吗? 答:本课 ...

  10. java在线学习系统源码_Java在线考试系统源码

    今天给大家演示的是一款由jsp+mysql+ssm框架实现的学生在线考试系统,,今天这个考试系统功能比较完善,支持单选.多选.简答题型,试题可以批量导入,导入时可选择多种方式导入,比如导入到试题库,导 ...

最新文章

  1. 百度最近开源了分布式配置中心,名叫BRCC
  2. SaaS创业型企业如何打破销售瓶颈?
  3. INFO ipc.Client:Retrying connect to server 9000
  4. 理解AngularJS中的依赖注入
  5. LeetCode --- Validate Binary Search Tree
  6. 如何计算CDS view里两个时间戳之间的天数间隔
  7. 在html中用表单插入servlet 怎么写servlet的地址,java web中servlet、jsp、html 互相访问的路径问题。...
  8. mysql 去重复屈居_mysql去重复关键字distinct的用法
  9. sql删除快还是update快_下班回家,是骑自行车减肥快还是走路减肥快?
  10. windows 使用 tree 命令显示目录和文件
  11. java flex blazeds_使用BlazeDS实现Java和Flex通信
  12. 《孙子兵法战略运筹之谋攻篇》
  13. 【英语四六级-必背单词】高中英语单词 (E)-MP3试听与下载
  14. IT4IT的前世今生
  15. java isprime函数_翁恺老师零基础java课程函数章第一题分解质因数
  16. EA周报 | Libra将与支付宝微信展开竞争;Google终止中国版搜索引擎;滴滴柳青:顺风车目前不能上线是因为害怕...
  17. 软件测试前景怎么样?大概要学什么?
  18. Libp2p - IPFS 与 Polkadot :双剑合璧会有时
  19. 敷完面膜后要擦水乳吗_面膜敷完后要擦水乳吗 面膜使用后如何正确护肤
  20. cocoscreator使用说明

热门文章

  1. 银行家算法及其c++代码实现
  2. 设计模式 (二十二) 责任链模式
  3. mysql去除重复的数据
  4. 痞子衡嵌入式:如果你正在量产i.MX RT产品,不妨试试这款神器RT-Flash
  5. python中 os._exit() 和 sys.exit(), exit(0)的用法和区别
  6. webpack配置路径问题 1
  7. 免费下载IEEE论文的网站
  8. 对语音通话占用带宽的理解
  9. HDOJ-2602 Bone Collector [DP-01背包问题]
  10. Struts2 Error filterStart异常的解决方法总结