java電梯
① java設計電梯模擬系統的類結構
其中的類成員變數設為 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();
}
② 求一個JAVA編寫的電梯升降程序。
模擬的話,用多線程,一個電梯就是一個線程。
公開一個方法,叫梯,將你的當前樓層傳進去,與電梯所在的樓層相減
取絕對值,那個最小,那個移動。
如果是正在移動中的,且能到達你的樓層的,優先。
大概就是這樣一個演算法。
③ JAVA 電梯運行管理程序
public static void main(String[] args) {
/*Lianxi1 lx = new Lianxi1();
lx.method();*/
boolean flag = new Lianxi1().byLift();
if(flag == true){
System.out.println("沒有地下室 開門");
}else
System.out.println("關門");
}
public boolean byLift(){
Random ran = new Random();
int num = Math.abs(ran.nextInt(1000));//總承受的重量
Random ran1 = new Random();
int floor = Math.abs(ran1.nextInt(5));//樓層數 1-5隨機
switch (num){
case 1000:
System.out.println("超重,發出警報 無法關門");
break;
default:
System.out.println("電梯關門");
break;
}
//選擇樓層 1-5返回true 關門
switch (floor) {
case 1:
return true;
case 2:
return true;
case 3:
return true;
case 4:
return true;
case 5:
return true;
default:
return false;
}
}
④ java模擬電梯運行
你是要代碼,還是?
⑤ java程序 電梯問題
先用j2se試試,==回復
⑥ java模擬實現兩部電梯同時工作的高效演算法
1. 各電梯控制:
a. 實現一個方法,返回本電梯到請求樓層上、下的時間(或者簡單點的,層數);
b. 任務接受:接受用戶樓層上、下請求任務
2. 主控部分:
a. 當用戶按下上、下請求時,通過調用兩個電梯的上面所說的服務,進行比較決斷最優時間電梯;
b. 給最最優電梯發送任務;
3. 主控與各電梯控制之間的通訊可以通過多種方式實現;
⑦ 用Java編寫程序,設計一個模擬電梯運行的類
最佳答案代碼如下:
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();
}
⑧ 用java編一個電梯(二十樓)小程序怎麼編
代碼如下:
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();
}
⑨ 在java面向對象中,如何寫模仿電梯功能 代碼塊
開門,關門,點擊樓層,報警呼救,四個方法,分別調用電梯生產商api