package com.cak.Abstract.polymorphic;
import java.util.Scanner;
//2023-5-16多态技术的学习
public class Test {
//两个静态方法用于传参
static Vickie[] vickies=new Vickie[100];
static int[] days =new int[100];
static Scanner scanner=null;
public static void main(String[] args) {
//System.out.println("===多态案例===");
boolean flag=true;
int choice =0;
String answer="";
int day=0;
int index=-1;//找空位置
while (flag){
System.out.println("==租车管理系统==\n1->卡车\n2->轿车\n3->拖拉机\n=======================\n请选择:");
Scanner scanner=new Scanner(System.in);
choice=scanner.nextInt();
switch (choice) {
case 1:
System.out.println("请输入卡车载重量:");
int weight=scanner.nextInt();
System.out.println("需要租借多少天:");
day=scanner.nextInt();
index = getFeePosition();//
if(index!=-1){
vickies[index]=new Truck(weight);
days[index]=day;
}else {
System.out.println("剩余租车数为0");
flag=false;
}
break;
case 2:
System.out.println("请输入轿车载客数:");
int seats=scanner.nextInt();
System.out.println("需要租借多少天:");
day=scanner.nextInt();
index = getFeePosition();//
if(index!=-1){
vickies[index]=new Limousine(seats);
days[index]=day;
}else {
System.out.println("剩余租车数为0");
flag=false;
}
break;
case 3:
System.out.println("请输入拖拉机的排量:");
double displacement=scanner.nextInt();
System.out.println("需要租借多少天:");
day=scanner.nextInt();
index = getFeePosition();//
if(index!=-1){
vickies[index]=new Tractors((int) displacement);
days[index]=day;
}else {
System.out.println("剩余租车数为0");
flag=false;
}
break;
default:
break;
}
if(flag){
System.out.println("还需要继续租车吗? Y or N");
answer=scanner.next();
if(!answer.equalsIgnoreCase("Y")){
flag=false;
}
}
}
double fee = CountTotal();
System.out.println("需支付租金"+fee+"元");
}
private static double CountTotal() {
double total = 0;
for(int i=0;i<vickies.length&&vickies[i]!=null;i++){
total += vickies[i].CountFee(days[i]);
}
return total;
}
private static int getFeePosition(){
int index=-1;
for(int i=0;i<vickies.length;i++){
if(vickies[i]==null){
index=i;
break;
}
}
return index;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
polymorphic.zip
共5个文件
java:5个
需积分: 0 0 下载量 63 浏览量
2023-05-23
18:23:40
上传
评论
收藏 3KB ZIP 举报
温馨提示
polymorphic.zip
资源推荐
资源详情
资源评论
收起资源包目录
polymorphic.zip (5个子文件)
polymorphic
Vickie.java 142B
Tractors.java 667B
Truck.java 569B
Limousine.java 551B
Test.java 4KB
共 5 条
- 1
资源评论
Cᴡᴀɪᴛ?⁹
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功