Java基础案例教程———【任务4-2】模拟物流快递系统
一、任务描述:
二、运行结果:
三、实现思路:
1、首先建立快递订单
快递任务类:变量货物重量,快递单号;
送货前方法;
送货中方法:需要车辆,定位;
送货后方法;
2、交通工具抽象类:运货人,车辆编号,车辆型号,
送货方法(抽象的,每种车的运输方法可能不同)
3、交通工具子类:实现交通工具,重写交通运输方法,
该子类需要保养;
4、保养接口:一个抽象的保养方法(在交通工具子类中重写)
5.、GPS接口:当前坐标
6 、GPS实现类phone: 具有定位功能的设备
7、测试类
四、实现代码:
用于实例化对象的父类:
私有内部变量,
添加构造方法,
添加Get , Set 方法
子类中实现构造方法
抽象类:
私有内部变量,
两个构造方法,
抽象方法,
Get方法 Set方法
子类:两个构造方法,
重写抽象方法
接口:都是抽象方法,没有方法体;
实现类:空参构造,重写方法
/***@Title sendTask.java*@time 2019年6月14日 下午2:52:54*@author *@version 1.0*@description 快递任务类:*货物重量*快递单号*送货前方法*送货中方法*送货后方法***/
package taskExpressage;public class SendTask {private double goodsWeight; // 货物重量private String number; // 快递单号// 无参构造函数public SendTask() {}// 有参构造函数public SendTask(double goodsWeight, String number) {this.goodsWeight = goodsWeight;this.number = number;}// 运送前的方法public void sendBefore() {System.out.println("订单开始处理:");System.out.println("货物重量:" + this.goodsWeight + "kg");System.out.println("货物检验完毕!");System.out.println("货物装填完毕!");System.out.println("运货人已通知!");System.out.println("快递单号:" + this.number);}// 运输中方法public void sending(Transpotation tr, GPS gp) {System.out.println("运货人 " + tr.getCarrier() + "正在驾驶编号为"+ tr.getNumber() + "的" + tr.getModel() + "发送货物");tr.transpotation();System.out.println("货物当前的坐标为" + gp.showCoordinates());}public void sendAfter(Transpotation tr) {System.out.println("运输任务已完成");System.out.println("运货人" + tr.getCarrier() + "所驾驶的编号为" + tr.getNumber()+ "的" + tr.getModel() + "已归还");}}
/***@Title Transpotation.java*@time 2019年6月14日 下午3:42:33*@author wangyue*@version 1.0*@description 交通工具抽象类*/
package taskExpressage;public abstract class Transpotation {private String carrier; // 运货人private String number; // 车辆编号private String model; // 车辆型号public Transpotation() {}public Transpotation(String carrier, String number, String model) {this.carrier = carrier;this.number = number;this.model = model;}// 送货方法public abstract void transpotation();public String getCarrier() {return carrier;}//GET,SET方法public void setCarrier(String carrier) {this.carrier = carrier;}public String getNumber() {return number;}public void setNumber(String number) {this.number = number;}public String getModel() {return model;}public void setModel(String model) {this.model = model;}}
/***@Title ATranspotation.java*@time 2019年6月14日 下午4:22:21*@author wangyue*@version 1.0*@description 交通工具子类*/
package taskExpressage;public class ATranspotation extends Transpotation implements Careable {// 构造方法public ATranspotation() {super();}public ATranspotation(String carrier, String number, String model) {super(carrier, number, model);}@Overridepublic void transpotation() {System.out.println("运输运行中。。。");}// 重写保养方法 implements Careablepublic void upKeep() {System.out.println("货物运输车辆保养完毕");}}
、
/***@Title Careable.java*@time 2019年6月14日 下午4:37:54*@author wangyue*@version 1.0*@description 定义保养接口*/
package taskExpressage;
public interface Careable {public abstract void upKeep();}
/***@Title GPS.java*@time 2019年6月14日 下午4:56:50*@author wangyue*@version 1.0*@description 定义GPS接口**/
package taskExpressage;public interface GPS {// 显示坐标的方法public String showCoordinates();}
/***@Title Phone.java*@time 2019年6月14日 下午5:22:19*@author wangyue*@version 1.0*@description GPS实现类*/
package taskExpressage;public class Phone implements GPS {public Phone() {super();}@Overridepublic String showCoordinates() {String location = "121.323";return location;}}
/***@Title test.java*@time 2019年6月14日 下午5:52:12*@author wangyue*@version 1.0*@description 测试类*/
package taskExpressage;public class test {public static void main(String[] args) {// 创建 快递任务对象SendTask sendTask = new SendTask(2.34, "190617");// 送货前sendTask.sendBefore();System.out.println("=============================");// 送货中ATranspotation tr = new ATranspotation("chenhao", "TB2572", "五菱宏光");Phone ph = new Phone();sendTask.sending(tr, ph);System.out.println("=============================");// 送货后sendTask.sendAfter(tr);}}
Java基础案例教程———【任务4-2】模拟物流快递系统相关推荐
- Java基础案例教程思维导图
Java基础案例教程目录
- Java基础案例3-1:基于控制台的购书系统
[案例3-1]基于控制台的购书系统 [案例介绍] 伴随互联网的蓬勃发展,网络购书系统作为电子商务的一种形式,正以其高效.低成本的优势逐步成为新兴的经营模式,人们已经不再满足互联网的用途仅仅局限于信息的 ...
- java基础案例教程第二章_第2章Java编程基础_补充案例教程.doc
第2章Java编程基础_补充案例教程 博学谷--让IT教学更简单,让IT学习更有效博学谷--让IT教学更简单,让IT学习更有效 PAGE \* MERGEFORMAT34PAGE \* MERGEFO ...
- java基础案例教程答案,2021最新版!
一面 1.你觉得项目中用了MQ给你带了什么好处,设计初衷是什么?会带来什么缺点嘛? (项目针对性比较强,不细说) 2.在网页键入taobao.com,到返回一个页面,这期间都发生了什么? 3.你说到了 ...
- oppoJava面试!传智播客java基础案例教程
零基础如何学习Java? 首先,你要明白一点,Java入门不难! 无论你是从事哪个行业,兴趣一定是最好的老师,也是你学习的动力. 学习方式1:自学 自学模式其实我个人不建议绝大部分的人选择,因为自学是 ...
- java基础案例教程前4章知识点_java学习记录4 Java基础知识点
java学习记录4 Java基础知识点 1. 注释 单行注释 使用"//"开头,后面是注释的内容 一般在要注释的语句的上面加注释 多行注释 以"/*"开头,以& ...
- 登录注册小程序(JAVA基础案例教程第二章-课后作业)
[案例介绍] 任务描述 编写程序实现简单的登录注册功能.程序包含以下4个功能: (1)登录功能,用户输入正确的账号密码进行成功: (2)注册功能,输入用户名和密码进行注册: (3)查看功能,查看所有的 ...
- java基础案例教程课后答案,华为财经2022春招面试
简介 HikariCP 是用于创建和管理连接,利用"池"的方式复用连接减少资源开销,和其他数据源一样,也具有连接数控制.连接可靠性测试.连接泄露控制.缓存语句等功能,另外,和 dr ...
- Java 登录注册系统 【java基础案例教程 案例2-6】
案例要求 编写程序实现简单的登录注册系统.程序包括以下4个功能. 1)登录功能,用户输入正确的账号密码可成功登录 2)注册功能,输入用户名和密码进行注册 3)查看功能,查看所有的用户名和密码 4)退出 ...
- 图形的面积与周长计算程序-课后程序(JAVA基础案例教程-黑马程序员编著-第四章-课后作业)
[案例4-7]图形的面积与周长计算程序 欢迎点赞关注收藏 [案例介绍] 案例描述 长方形和圆形都属于几何图形,都有周长和面积,并且它们都有自己的周长和面积计算公式.使用抽象类的知识设计一个程序,可以计 ...
最新文章
- 计算机软件uml,计算机软件——UML旅游管理系统
- 伯克利论断:Serverless 才是云时代的主宰
- void关键字的使用规则
- 「文末预告,注意查收」告别枯燥的理论,回归技术
- AI CC2018软件安装教程
- 使用Java语言从零开始创建区块链
- 小波降噪与重构例子 python
- android Drawable.mutate()的使用
- SharePoint 2010 Form Authentication (SQL) based on existing database
- 【机器学习】Andrew Ng——前言
- ASP.NET教程4
- html网页之日历代码,javascript html实现网页版日历代码
- 宏基aspire拆机触摸_Acer宏基E1471G笔记本怎么拆机拆主板?
- 06年他预测阿里巴巴会干掉慧聪网,当时所有人都在嘲笑他
- html页面右下角添加js广告,JS右下角悬浮广告代码的简单示例
- linux常中的cat命令,linux下cat命令详解
- can是什么时候处于显性_CAN总线什么情况下为空闲状态? - 全文
- freeswitch呼入落地测试信息
- CobaltStrike脚本
- 黄冈职业技术学院学计算机好就业吗,黄冈职业技术学院怎么样?王牌专业有哪些?...
热门文章
- 对链表进行插入排序。从第一个元素开始,该链表可以被认为已经部分排序。每次迭代时,从输入数据中移除一个元素,并原地将其插入到已排好序的链表中。
- apache(Web服务器)
- WORD 表格中图片显示不出来?
- TPT中脚本评估的正确打开方式 (上):强大的内置函数库
- Vagrant的各种坑介绍
- 服务器系统宕机什么意思,服务器宕机是什么意思?
- 商旅信用卡(多重继承)
- 海贼王剧场版:Z 剧情详解(附TS无字幕版地址)
- [LeetCode][沙雕氵]如何用LeetCode130写一个故事?
- 基于HTML+CSS+JavaScript制作服装商城网站设计毕业论文源码