一个模仿物流快递体系的程序,可以模仿后台体系处理货品的进程
package expressage;
public abstract class Transportation {
private String number;//编号
private String model;//类型
private String admin;//运货负责人
public Transportation(){
super();
}
public Transportation(String number,String model,String admin){
this.number=number;
this.model=model;
this.admin=admin;
}//运送办法
public abstract void transport();
//编号
public void setNumber(String number){
this.number=number;
}
public String getNumber(){
return number;
}
//类型
public void getModel(String model){
this.model=model;
}
public String getModel(){
return model;
}
//负责人
public void setAdmin(String admin){
this.admin=admin;
}
public String getAdmin(){
return admin;
}
}
package expressage;
public interface Careable {
public abstract void upKeep();
}
package expressage;
public class Ztransportation extends Transportation implements Careable{
public Ztransportation(){
super();
}//无参结构
public Ztransportation(String number,String model,String admin){
super(number,model,admin);
}//有参结构:车辆编号,类型,负责人
public void transport(){
System.out.println("运送进行中。。。。。");
}//运送办法
public void upKeep(){
System.out.println("货品运送车辆保养结束!");
}//重写车辆保养办法
}
package expressage;
public class SendTask {
private String number;//快递单号
private double goodsWeight;//货品分量
public SendTask(){
super();
}
public SendTask(String number,double goodsWeight){
this.number=number;
this.goodsWeight=goodsWeight;
}
public void sendBefore(){
System.out.println("订单开端处理,库房验货中。。.");
System.out.println("货品分量:"+this.getGoodsWeight()+"kg");
System.out.println("货品查验结束");
System.out.println("货品填装结束");
System.out.println("运货人已告诉!");
System.out.println("快递单号:"+this.getNumber());
}//送前预备
public void send(Transportation t,GPS tool){
System.out.println("运货人"+t.getAdmin()
+"正在驾驭编号为"+t.getNumber()
+"的"+t.getModel()+"发送货品!");
t.transport();
String showCoordinate=tool.showCoordinate();
System.out.println("货品当时的坐标为:"+showCoordinate);
}//发送货品
public void sendAfter(Transportation t){
System.out.println("货品运送功用已完结!");
System.out.println("运货人"+t.getAdmin()
+"所驾驭的编号为"+t.getNumber()
+"的"+t.getModel()+"已偿还!");
}//送后操作
public String getNumber(){
return number;
}
public void setNumber(String number){
this.number=number;
}
public double getGoodsWeight(){
return goodsWeight;
}
public void setGoodsWeight(double goodsWeight){
this.goodsWeight=goodsWeight;
}
}
package expressage;
public interface GPS {
public String showCoordinate();
}
package expressage;
class phone implements GPS{
public phone(){
super();
}
public String showCoordinate(){
String locateion="000,000";
return locateion;
}
}
package expressage;
public class task {
public static void main(String[] args){
SendTask task01=new SendTask("jd5201314",8848);
task01.sendBefore();
System.out.println("*.................*");
Ztransportation t=new Ztransportation("jd000","长安轿车","小强");
phone p= new phone();
task01.send(t,p);
System.out.println("*.................*");
task01.sendAfter(t);
t.upKeep();
}
}
运转成果:

运转效果图