当前位置:首页 > java技术文章 > Java实现简单汽车租赁系统

租车系统的Java简单实现

  • 发布时间:
  • 作者:码农之家原创
  • 点击:198

这篇文章主要知识点是关于java、汽车租赁、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

JavaScript核心技术开发解密
  • 类型:JavaScript大小:68.4 MB格式:PDF作者:阳波
立即下载

Java实现简单汽车租赁系统

本文实例为大家分享了Java实现简单汽车租赁系统的具体代码,供大家参考,具体内容如下

需求如下: 

Java实现简单汽车租赁系统

问题分析:

首先应当构建一个MotoVehicle的抽象(abstract)类,类里面包含一个brand属性,表示汽车品牌;还包含一个no属性,表示汽车牌号;

package cn.jbit.car;
 
public abstract class MotoVehicle {
 private String no;
 private String brand;
 /**
 * 无参构造方法
 */
 public MotoVehicle() {
 
 }
 /**
 * 有参构造方法
 * @param no 汽车牌号
 * @param brand 汽车品牌
 */
 public MotoVehicle(String no,String brand) {
 this.no=no;
 this.brand=brand;
 }
 
 public String getNo() {
 return no;
 }
 
 public String getBrand() {
 return brand;
 }
 public abstract int calRent(int days);
}

其次,应有Car类继承自MotoVehicle类,并有一个type属性,表示轿车型号,应有一个计算租金的方法calRent()

 

package cn.jbit.car;
 
public class Car extends MotoVehicle{
 private String type;
 public Car() {
 
 }
 public Car (String no,String brand,String type) {
 super(no,brand);
 this.type=type;
 }
 
 public String getType() {
 return type;
 }
 
 public void setType(String type) {
 this.type = type;
 }
 @Override
 public int calRent(int days) {
 // TODO Auto-generated method stub
 if("2".equals(type)) {
  return days*500;
 }
 else if ("1".equals(type)) {
  return days*600;
 }
 else {
  return 300*days;
 }
 } 
}

再次,应有Bus类继承自MotoVehicle类,并有一个CountSet属性,表示客车的容量,同样的,应有一个计算租金的方法calRent();

 

package cn.jbit.car;
 
public class Bus extends MotoVehicle {
 int CountSet;
 public Bus() {
 }
 /**
 * 带参构造函数
 */
 public Bus(String brand,String no,int CountSet) {
 super(brand,no);
 this.CountSet=CountSet; 
 }
 public int getCountSet() {
 return CountSet;
 } 
 public void setCountSet(int countSet) {
 CountSet = countSet;
 }
 
 @Override
 public int calRent(int days) {
 // TODO Auto-generated method stub
 if(CountSet<16) {
  return 800*days;
 }
 else {
  return 1600*days;
 }
 }
 
}

最后,以上三类应在test类中测试;

package cn.jbit.car;
import java.util.Scanner;
 
public class Test {
 public static void main(String[] args) {
 String no,brand,mtype;
 int countSet,days;
 Scanner input=new Scanner(System.in);
 System.out.println("*****欢迎来到汽车租赁公司!******");
 System.out.println("请输入天数:");
 days=input.nextInt();
 System.out.println("请输入车辆类型:");
 System.out.println("1、轿车  2、客车");
 mtype=input.next();
 if("1".equals(mtype)) {
  System.out.println("请输入轿车品牌:");
  System.out.println("1、宝马 2、别克");
  brand=input.next();
  if("1".equals(brand)) {
  System.out.println("2、宝马550i:500");
  System.out.println("请输入轿车型号:");
  mtype=input.next();
  System.out.println("请输入辆数:");
  int count=input.nextInt();
  Car car=new Car("辽B000",brand,mtype);
  System.out.println("您需支付:"+count*car.calRent(days));
  
  }
  else {
  System.out.println("1、别克商务GL8:600  3、别克林荫大道:300");
  mtype=input.next();
  System.out.println("请输入辆数:");
  int count=input.nextInt();
  Car car=new Car("辽B000",brand,mtype);
  System.out.println("您需支付:"+count*car.calRent(days));
  }
 }
 else {
  System.out.println("请输入品牌:");
  System.out.println("1、金杯  2、金龙");
  brand=input.next();
  System.out.println("请输入座位数:");
  countSet=input.nextInt();
  System.out.println("请输入辆数:");
  int count=input.nextInt();
  Bus b=new Bus(brand,"辽B000",countSet);
  System.out.println("您需支付:"+b.calRent(days)*count);
 }
 }
 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

推荐内容

idea2020注册激活码(激活到2100年)

实例分析Java实现的zip压缩及解压缩工具类

python3 pandas 如何读取MySQL数据和插入

ThinkPHP3.2.3框架如何实现分页功能

深入理解JS函数stack size计算方法

展开 +

收起 -

Java 相关电子书
学习笔记
网友NO.257655

Java实现两人五子棋游戏(三) 画出棋子

上一篇文章讲的是Java实现两人五子棋游戏(二) 画出棋盘,已经画好棋盘,接下来要实现控制功能,主要功能: 1)选择棋子 2)画棋子 3)判断胜负 4)交换行棋方 先实现画棋子PART -------------画棋子代码示例如下-------------- 首先,定义一个棋子类,这个类有两个属性,棋子颜色(0-表示黑色,1-表示白色),是否落子(我计划用一个二维数组才存储棋子的落子信息) Chessman.java package xchen.test.simpleGobang; public class Chessman { private int color;//1-white,0-black private boolean placed = false; public Chessman(int color,boolean placed){ this.color=color; this.placed=placed; } public boolean getPlaced() { return placed; } public void setPlaced(boolean placed) { this.placed = placed; } public int getColor() { return color; } public void setColor(int color) { this.color = color; } } 接着我们上一部分的画好棋盘的代码部分,新增画棋子的代码,我……

网友NO.323836

Java中 log4j日志级别配置详解

1.1 前言 说出来真是丢脸,最近被公司派到客户公司面试外包开发岗位,本来准备了什么redis、rabbitMQ、SSM框架的相关面试题以及自己做过的一些项目回顾,信心满满地去面试,结果别人一上来就问到了最近项目使用的日志系统是什么?日志级别是怎么配置的?当时我都蒙X了,平时都是项目经理搭的,我自己也是随便上网一搜往配置文件一黏贴就OK了。我就这么说完后面试官深深定了我一眼,当时我的内心羞愧到...... 1.2 闲话少说,讲讲日志的发展故事(如果已经了解的可以跳过,直接看1.3日志配置) 要想对日志技术实现深入了解,我个人建议去看:logback + slf4j。至于日志配置,还是了解log4j比较好,因为目前绝大部分的项目还是使用log4j的。好了,下面开始讲讲日志的发展故事: 1999年,Apache开源社区发布了log4j,一时轰动整个程序界,从此成为日志的……

网友NO.108284

Java 继承与多态的深入理解

Java 继承与多态的深入理解 1、 什么是继承,继承的特点? 子类继承父类的特征和行为,使得子类具有父类的各种属性和方法。或子类从父类继承方法,使得子类具有父类相同的行为。 特点:在继承关系中,父类更通用、子类更具体。父类具有更一般的特征和行为,而子类除了具有父类的特征和行为,还具有一些自己特殊的特征和行为。 在继承关系中。父类和子类需要满足is-a的关系。子类是父类。 表示父类和子类的术语:父类和子类、超类和子类、基类和派生类,他们表示的是同一个意思。 2、 为什么需要继承?什么时候应该继承? 使用继承可以有效实现代码复用,避免重复代码的出现。 当两个类具有相同的特征(属性)和行为(方法)时,可以将相同的部分抽取出来放到一个类中作为父类,其它两个类继承这个父类。 继承实现了面向对象的原……

网友NO.245648

11个教程中不常被提及的JavaScript小技巧(推荐)

1、过滤唯一值 Set类型是在ES6中新增的,它类似于数组,但是成员的值都是唯一的,没有重复的值。结合扩展运算符(...)我们可以创建一个新的数组,达到过滤原数组重复值的功能。 const array = [1, 2, 3, 3, 5, 5, 1];const uniqueArray = [...new Set(array)];console.log(uniqueArray); // [1, 2, 3, 5] 在ES6之前,我们如果想要实现这个功能的话,需要的处理代码要多很多。 这个技巧的适用范围是数组中的数值的类型为:undefined, null, boolean, string, number。当包涵object, function, array时,则不适用。 2、短路求值(Short-Circuit Evaluation) 三目运算符是一个很方便快捷的书写一些简单的逻辑语句的方式, x 100 ? 'Above 100' : 'Below 100';x 100 ? (x 200 ? 'Above 200' : 'Between 100-200') : 'Below 100'; 但是有些时候当逻辑复杂之后,三目运算符书写起来可读性也会很难。这个时候,我们就可以使用逻辑与……

网友NO.811130

Java学习笔记之观察者模式

本文为大家分享了Java设计模式之观察者模式,供大家参考,具体内容如下 1、初步认识 观察者模式的定义: 在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。 大白话: 其实就是发布订阅模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。 2、这个模式的结构图 3、可以看到,该模式包含四个角色 抽象被观察者角色:也就是一个抽象主题,它把所有对观察者对象的引用保存在一个集合中,每个主题都可以有任意数量的观察者。抽象主题提供一个接口,可以增加和删除观察者角色。一般用一个抽象类和接口来实现。 抽象观察者角色:为所有的具体观察者定义一个接口,在得到主题通知时更新自己。 具体被观察者角色:也就是一个具体的主题,在集体主题的内部……

<
1
>

电子书 编程教程 文档 软件 源码 视频

Copyright 2018-2020 xz577.com 码农之家

本站所有电子书资源不再提供下载地址,只分享来路

免责声明:网站所有作品均由会员网上搜集共同更新,仅供读者预览及学习交流使用,下载后请24小时内删除

版权投诉 / 书籍推广 / 赞助:QQ:520161757