欢迎光临散文网 会员登陆 & 注册

Java oop:租车系统详细解析和颜色分层,帮你更易看懂结构

2020-02-21 11:46 作者:诗书画唱  | 我要投稿

package b;


import java.util.Scanner;


public class Text {


public static void main(String[] args) {


che xiaohuoche = new huoche(1, "小货车", 30, 0, 3);


che dahuoche = new huoche(2, "大货车", 50, 0, 5);


che xiaokeche = new keche(3, "小客车", 40, 4, 0);


che dakeche = new keche(4, "大客车", 80, 10, 0);


che xiaopika = new pika(5, "小皮车", 60, 2, 4);


che dapika = new pika(6, "大皮车", 100, 4, 8);


che[] c = new che[6];


c[0] = xiaohuoche;

c[1] = dahuoche;

c[2] = xiaokeche;


c[3] = dakeche;

c[4] = xiaopika;

c[5] = dapika;


yonghu yh = new yonghu();


che[] c_zuche = null;


while (true) {


System.out.println("---------神舟租车系统-----------");


System.out.println("请输入你的操作:1.登录  2.注册  3.跳出系统");


Scanner s = new Scanner(System.in);


int num = s.nextInt();


if (num == 1) {


System.out.println("----执行登录操作----");


System.out.println("请输入用户名:");


String uname = s.next();


System.out.println("请输入你的密码");


String pwd = s.next();


if (uname.equals(yh.uname) && pwd.equals(yh.pwd)) {


System.out.println("登录成功!");


break;


} else {


System.out.println("登录失败");


}


} else if (num == 2) {


System.out.println("----执行注册操作----");


System.out.println("请输入用户名:");


String uname = s.next();


System.out.println("请输入你的密码");


String pwd = s.next();


System.out.println("请输入你的姓名");


String name = s.next();


yh.uname = uname;


yh.pwd = pwd;


yh.name = name;


System.out.println("注册成功!");


} else if (num == 3) {


System.exit(0);


}


}


// 租车操作


while (true) {


System.out.println("欢迎," + yh.name + "请选择你的操作:");


System.out

.println("1.查看车辆列表  2.进行租车  3.查看我的租车总价格,总载人量,总载物量 4.跳出系统");


Scanner s1 = new Scanner(System.in);


int num = s1.nextInt();


if (num == 1) {


for (che i : c) {/* 相当于for(int i=0;i<c.length;i++) */


i.jieshao();


}


} else if (num == 2) {


System.out.println("请输入你要租的车辆数");


int num1 = s1.nextInt();


c_zuche = new che[num1];


for (int i = 0; i < num1; i++) {


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


int bianhao = s1.nextInt();


switch (bianhao) {


case 1:


c_zuche[i] = xiaohuoche;

break;


case 2:


c_zuche[i] = dahuoche;

break;


case 3:


c_zuche[i] = xiaokeche;

break;


case 4:


c_zuche[i] = dakeche;

break;


case 5:


c_zuche[i] = xiaopika;

break;


case 6:


c_zuche[i] = dapika;

break;


}


}


System.out.println("租车成功!");


} else if (num == 3) {


if (c_zuche == null) {


System.out.println("你还没有进行租车呢!");


} else {


int zongjiage = 0;


int zongzairenliang = 0;


int zongzaiwuliang = 0;


for (che i : c_zuche) {


i.jieshao();


zongjiage += i.jiage;


zongzairenliang += i.zaikeliang;


zongzaiwuliang += i.zaiwuliang;


}


System.out.println("总价格" + zongjiage + "总载人量" +


zongzairenliang + "总载物量" + zongzaiwuliang);


}


} else {


System.exit(0);/* 终止系统,不可为break,break是跳出循环 */


}


}


}


}


class yonghu {


String uname;


String pwd;


String name;


}


abstract class che {


int bianhao;


String name;


int jiage;


int zaikeliang;


int zaiwuliang;


public che(int bianhao, String name, int jiage, int zaikeliang,int zaiwuliang) {


this.bianhao = bianhao;


this.name = name;


this.jiage = jiage;


this.zaikeliang = zaikeliang;


this.zaiwuliang = zaiwuliang;


}


abstract void jieshao();


}


class huoche extends che {


public huoche(int bianhao, String name, int jiage,


int zaikeliang, int zaiwuliang) {


super(bianhao, name, jiage, zaikeliang, zaiwuliang);


}


void jieshao() {


System.out.println("编号" + this.bianhao + "\t名称" + this.name +


"\t价格" + this.jiage + "\t载物量" + this.zaiwuliang);


}


}


class keche extends che {


public keche(int bianhao, String name, int jiage, int zaikeliang,


int zaiwuliang) {


super(bianhao, name, jiage, zaikeliang, zaiwuliang);


}


void jieshao() {


System.out.println("编号" + this.bianhao + "\t名称" +


this.name + "\t价格" + this.jiage + "\t载人量" + this.zaikeliang);


}


}


class pika extends che {


public pika(int bianhao, String name, int jiage, int zaikeliang,


int zaiwuliang) {


super(bianhao, name, jiage, zaikeliang, zaiwuliang);


}


void jieshao() {


System.out.println("编号" + this.bianhao + "\t名称" +


this.name + "\t价格" + this.jiage + "\t载人量" + this.zaikeliang + "载物量" +


this.zaiwuliang);


}


}



Java oop:租车系统详细解析和颜色分层,帮你更易看懂结构的评论 (共 条)

分享到微博请遵守国家法律