java设计电梯模拟系统的类结构
要求:只写出类设计:包括类名,类的成员及其访问控制修饰符大家帮忙,紧急不好意思,补充下ElevatorControl:电梯控制类。Elevator:电梯类,控制电梯的上升...
要求:只写出类设计:包括类名,类的成员及其访问控制修饰符
大家帮忙,紧急
不好意思,补充下
ElevatorControl:电梯控制类。
Elevator:电梯类,控制电梯的上升和下降,需要时可以停下。
Door:门类,系统中的门可以打开和关闭。
Button:按钮类,按钮类生成两个子类电梯呼叫按钮和楼层呼叫按钮
Indicate:指示器类,电梯位置指示器和电梯方向指示器,提供电梯的当前位置和移动方向。
Safety:安全装置类,任何紧急情况时,电梯控制器出发安全装置 展开
大家帮忙,紧急
不好意思,补充下
ElevatorControl:电梯控制类。
Elevator:电梯类,控制电梯的上升和下降,需要时可以停下。
Door:门类,系统中的门可以打开和关闭。
Button:按钮类,按钮类生成两个子类电梯呼叫按钮和楼层呼叫按钮
Indicate:指示器类,电梯位置指示器和电梯方向指示器,提供电梯的当前位置和移动方向。
Safety:安全装置类,任何紧急情况时,电梯控制器出发安全装置 展开
2个回答
展开全部
其中的类成员变量设为 private 就OK了。本人忘了加入。你可以自行加的。
可能不是很详细,你可以根据自己的想法,增加一些成员,方法的。
在这些类中,有些接口是自定义的,在此没有给出,望见谅!
有空多到我的空间走走,大家互相讨论一下。
public class ElevatorModel implenent ElevatorModelListener{
ElevatorShaft elevatorShaft;//电梯车箱
Floor firstFloor;
Floor secondFloor;
public void addPerson(Person person);
//实现ElevatorModelListener接口的所有方法
}
public abstract class Location{
String locationName;//可能占据的三个位置firstFloor; secondFloor;elevator中的其中一个位置。
public Button getButton();
public Door getDoor();
}
public class Floor extends Location{
public Floor(String firstFloor,String secondFloor);
public Button getButton();//具体实现
public Door getDoor();//具体实现
public ElevatorShaft getElevatorShaft();
}
public class Door implenent ElevatorMoveListener{
boolean open;//门是开的关的
public void openDoor();//开门
public viod clossDoor();//关门
}
public class Button implenent ElevatorMoveListener{
boolean pressed;
public void pressButton();//按下按钮
public void resetButton();//释放按钮
public void elevatorArrived();//电梯到来
}
public class ElevatorShaft{//电梯乘箱
Elevator elevator;//电梯
Button firstFloorButton,secondFloorButton;//出发层的按钮和到达层的按钮
Door firstFloorDoor,secondFloorDoor;//出发的门和到达的门
Light firstFloorLight,secondFloorLight;//灯
//监听器
DoorListener doorListener;
ButtonListener buttonListener;
LightListener ligthListener;
BellListener bellListener;
ElevatorMoveListener elevatorMoveListener;
Set set;
}
public class Light implenent ElevatorMoveListener{
boolean lightOn;//代表灯的状态,亮或灭
public void turnOnLight();
public void turnOffLight();
public void elevatorDeparted();//具体实现
public void elevatorArrived();//具体实现
}
public class Bell implenent ElevatorMoveListener{
public void ringBell();
public void elevatorDeparted();//具体实现
public void elevatorArrived();//具体实现
}
public class Elevator extends Location implenets ButtonListener,DoorListener,BellListener,Runable
{//电梯乘箱
boolean moving;
boolean summoned;//描述Elevator是在移动还是已经补召唤
Floor currentFloor;//当前正在提供服务的Floor
Floor destinationFloor ; //代表将要到达的Floor
Button elevatorButton;
Door elevatorDoor;
Bell bell;
public void run();// 实现
public void requestElevator();//请求Elevator并产生排队请求。
}
public class Person extends Thread{
Location类对象(或是位于Floor上,或是出处在Elevator中);
int ID;
boolean moving;
public void run();//具体实现
public void enterAndRideElevator();
}
可能不是很详细,你可以根据自己的想法,增加一些成员,方法的。
在这些类中,有些接口是自定义的,在此没有给出,望见谅!
有空多到我的空间走走,大家互相讨论一下。
public class ElevatorModel implenent ElevatorModelListener{
ElevatorShaft elevatorShaft;//电梯车箱
Floor firstFloor;
Floor secondFloor;
public void addPerson(Person person);
//实现ElevatorModelListener接口的所有方法
}
public abstract class Location{
String locationName;//可能占据的三个位置firstFloor; secondFloor;elevator中的其中一个位置。
public Button getButton();
public Door getDoor();
}
public class Floor extends Location{
public Floor(String firstFloor,String secondFloor);
public Button getButton();//具体实现
public Door getDoor();//具体实现
public ElevatorShaft getElevatorShaft();
}
public class Door implenent ElevatorMoveListener{
boolean open;//门是开的关的
public void openDoor();//开门
public viod clossDoor();//关门
}
public class Button implenent ElevatorMoveListener{
boolean pressed;
public void pressButton();//按下按钮
public void resetButton();//释放按钮
public void elevatorArrived();//电梯到来
}
public class ElevatorShaft{//电梯乘箱
Elevator elevator;//电梯
Button firstFloorButton,secondFloorButton;//出发层的按钮和到达层的按钮
Door firstFloorDoor,secondFloorDoor;//出发的门和到达的门
Light firstFloorLight,secondFloorLight;//灯
//监听器
DoorListener doorListener;
ButtonListener buttonListener;
LightListener ligthListener;
BellListener bellListener;
ElevatorMoveListener elevatorMoveListener;
Set set;
}
public class Light implenent ElevatorMoveListener{
boolean lightOn;//代表灯的状态,亮或灭
public void turnOnLight();
public void turnOffLight();
public void elevatorDeparted();//具体实现
public void elevatorArrived();//具体实现
}
public class Bell implenent ElevatorMoveListener{
public void ringBell();
public void elevatorDeparted();//具体实现
public void elevatorArrived();//具体实现
}
public class Elevator extends Location implenets ButtonListener,DoorListener,BellListener,Runable
{//电梯乘箱
boolean moving;
boolean summoned;//描述Elevator是在移动还是已经补召唤
Floor currentFloor;//当前正在提供服务的Floor
Floor destinationFloor ; //代表将要到达的Floor
Button elevatorButton;
Door elevatorDoor;
Bell bell;
public void run();// 实现
public void requestElevator();//请求Elevator并产生排队请求。
}
public class Person extends Thread{
Location类对象(或是位于Floor上,或是出处在Elevator中);
int ID;
boolean moving;
public void run();//具体实现
public void enterAndRideElevator();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询