一個模擬物流快遞系統的程序,能夠模擬後臺系統處理貨物的過程
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();
}
}
運行結果: