《交通燈管理系統》

2021-09-02 10:09:47 字數 924 閱讀 1876

1、了解了物件導向的設計方法,運用物件導向思想設計程式時,乙個核心的要領是「誰擁有資料,誰就對外提供操作這些資料的方法」;

2、通過學習專案,體驗到程式設計除了知識和技術之外,還有另外乙個維度:對各類知識和技術的整合;

3、列舉在開發中的應用;

4、執行緒池的使用。

在理解了老師講解的基礎上,自己對問題又重新做了一番思考,產生了乙個疑問:在交通燈管理系統中使用了多執行緒,也有共享資料,但老師並沒有使用同步,我想可能是因為對於交通燈亮與滅的幾十秒,程式內部因為沒有同步產生的幾微秒的誤差是可以忽略不計的。

同時在學習老師的**的過程中發現可以對lamp類進行一些簡化:處於對稱位置的兩條行車路線可以共享同乙個交通燈,例如南向北和北向南可以共享乙個直行交通燈,所以對於12條行車路線只需要由6盞交通燈進行控制。重新設計過的lamp類如下:

public enum lamp 

lamp()

// 開燈

public void turnon()

// 關燈

public void turnoff()

// 判斷燈的狀態

public boolean islighted()

// 獲取後繼交通燈

public lamp nextlamp()

// 獲取交通燈持續明亮的時間

public int gettime()

public void settime(int time)

}

學習專案給人一種與學習知識截然不同的體驗,它一會兒要求人深入細節去實現具體功能,一會兒要求人跳出細節進行全域性地把握。對於乙個沒有開發經驗的新人,學習專案能讓人對程式開發有乙個更全面的了解,更能從牛人的**中、老師的講解中學到許多超越知識的東西。寫到這裡想起在黑馬的課程中安排了許多大大小小的專案,不禁對未來有了更進一步的期待。

交通燈管理系統

銀行業務排程系統模擬銀行排程系統邏輯。需求 銀行內有6個業務視窗,1 4為普通視窗,5為快速視窗,6為vip視窗。有三種型別客戶 vip客戶,快速客戶 交水電費類業務 普通客戶。一部隨機生成各種型別的客戶,概率比例為 vip客戶 快速客戶 普通客戶 1 3 6。客戶辦理用時設定最少時間。各型別客戶在...

交通燈管理系統

需求 模擬實現十字路口的交通燈管理系統邏輯,具體需求如下 1.非同步隨機生成按照各個路線行駛的車輛。例如 由南向而來去往北向的車輛 直行車輛 由西向而來去往南向的車輛 右轉車輛 由東向而來去往南向的車輛 左轉車輛 2.訊號燈忽略黃燈,只考慮紅燈和綠燈。3.應考慮左轉車輛控制訊號燈,右轉車輛不受訊號燈...

交通燈管理系統

1 非同步隨機生成按照各個路線行駛的車輛。例如 由南向而來去往北向的車輛 直行車輛 由西向而來去往南向的車輛 右轉車輛 由東向而來去往南向的車輛 左轉車輛 2 訊號燈忽略黃燈,只考慮綠燈和紅燈。3 應考慮左轉車輛控制訊號燈,右轉車輛不受訊號燈控制 4 具體訊號燈控制邏輯與現實生活中普通交通燈控制邏輯...