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