📄 bus.java
字号:
import java.util.Vector;
public abstract class Bus
{
public static final int stop=0;
public static final int run=1;
//属性
private Vector passengers;//乘客的队列
private String busnum;//车的编号
private int flag;//标识客车的状态
private int runtime;//标识在一次客运中运行的时间
protected String busmark; //车型
protected int lefttime; //离发车还剩余的时间
//方法
public Bus(String num){ //构造函数
passengers=new Vector();
busnum=num;
flag=stop;
runtime=0;
}
public Bus(){ //构造函数
this("");
}
public int getpassengernum(){ //取得乘客的数目
return passengers.size();
}
public void getonpassenger(Passenger person){//上一个乘客
passengers.addElement((Object)person);
}
public void getoffpassenger(Passenger person){//下一个乘客
passengers.removeElement((Object)person);
}
public String getbusnum(){ //取得车的编号
return busnum;
}
public void setbusnum(String num){ //设置车的编号
busnum=num;
}
public void setflag(int condition){//设置车的状态
flag=condition;
}
public int getflag(){ //取得车的状态
return flag;
}
public void setruntime(int time){//设置车的行驶时间
runtime=time;
}
public void incruntime(){ //增加车的行驶时间
runtime+=1;
}
public int getruntime(){//取得车的行驶时间
return runtime;
}
public boolean stopat(Station astation){//判断在某个站是否有乘客下车
for(int i=0;i<passengers.size();++i){
if(((Passenger)passengers.elementAt(i)).getaimland().getname()==astation.getname())
return true;
}
return false;
}
public String getbusmark(){ //取得车型
return busmark;
}
public void setlefttime(int time){//设置剩余时间
lefttime=time;
}
public int getlefttime(){//取得剩余时间
return lefttime;
}
public void declefttime(){//减少剩余时间
lefttime-=1;
}
public abstract void setlefttime(); //无参设置
public abstract int maxpassengersnum(); //取得最大的乘客量
public abstract double getbusrate(); //取得车速
public void getoffat(Station astation){//到达目的地的乘客下车
for(int i=0;i<getpassengernum();++i){
if(((Passenger)passengers.elementAt(i)).getaimland().getname()==astation.getname()){
passengers.removeElementAt(i);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -