資源簡介
初始化停車場(確定停車區個數n,每個停車區的停車位,且初始時,停車場為空),說明:使用一個共享數組(臨界資源)存儲每個停車區中空閑停車位的個數,每一個停車區使用一個共享緩沖區可容納一輛車,停車場公共通道允許通過兩輛車通過。
停車場入口檢查是否有空閑停位,如果有發放相關停車區的停車卡,允許停車。如果不存在空閑車位,等待到有空閑車位止。注,入口處應盡量發放不同停車區的停車卡,以獲得更高的效率。停車場過道允許兩輛車同時通過。
停車場出口,回收停車卡,并修改相關停車區空閑車位數。注:同一時刻只能有一個車出停車場。
每一個停車區,有一個待車位,供進入停車區車輛進入停車區。停車區只能有一輛車進或出。
每輛車每進入下一環節皆應停留一定時間。每一個用戶建立一個窗口,于窗口中顯示當前將態。將狀態轉換可由人工確定亦可自動完成,但進入下狀態時需要停留學生一定的時間,以保證多個用戶“并行”工作。
本框架由四個類組成,這四個類分別是:InitFrame、WotkFram、carJFrame及carThread,由InitFrame啟動。類InitFrame提供停車場初始化功能,完成初始任務后啟動類WotkFram界面,執行停車場模擬程序,點擊命令按扭“進入停車場”,建立一個線程(線程類名為carThread),線程建立一個carJFrame窗口(車輛進入、離開停車場操作程序)模擬車輛進入或離開停車場。

代碼片段和文件信息
package?com.parking;
/*
?*?carJframe.java
?*
?*?Created?on?2008年9月2日?下午9:01
?*/
/**
?*
?*?@author??cheng
?*/
import?javax.swing.*;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.awt.event.WindowAdapter;
import?java.awt.event.WindowEvent;
public?class?carJframe?extends?Jframe?{
????/**
?*?
?*/
private?static?final?long?serialVersionUID?=?1L;
/**
?????*?@param?args?the?command?line?arguments
?????*/
????
????//?變量聲明?-?不進行修改//GEN-BEGIN:variables
????private?JButton?jbtnEnterStop;
????
????private?JButton?jbtnLeftArea;
????
????private?JButton?jbtnLeftStop;
????
????private?JButton?jbtnLookUpArea;
????
????private?JButton?jbtnLookupPosition;
???
????private?WorkFram?mainFram;
????
????private?int?chooseArea;
????
????//?變量聲明結束//GEN-END:variables
????
????/**?Creates?new?form?carJframe?*/
????
????public?carJframe(WorkFram?frm)?{
????????initComponents();
????????mainFram?=?frm;
????}
????
????/**This?method?is?called?from?within?the?constructor?to
?????*?initialize?the?form.
?????*?WARNING:?Do?NOT?modify?this?code.?The?content?of?this?method?is
?????*?always?regenerated?by?the?Form?Editor.
?????*/
????//?//GEN-BEGIN:initComponents
????private?void?initComponents()?{
????
????????jbtnEnterStop?=?new?JButton();
????????jbtnLookUpArea?=?new?JButton();
????????jbtnLookupPosition?=?new?JButton();
????????jbtnLeftArea?=?new?JButton();
????????jbtnLeftStop?=?new?JButton();
????????setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
????????
????????settitle(“\u505c\u8f66\u573a\u64cd\u4f5c“);
????????
????????jbtnEnterStop.setText(“\u8fdb\u5165\u505c\u8f66\u573a“);
????????
????????jbtnEnterStop.addActionListener(new?ActionListener()?{
????????????public?void?actionPerformed(ActionEvent?evt)?{
????????????????jbtnEnterStopActionPerformed(evt);
????????????}
????????});
????????jbtnLookUpArea.setText(“\u5bfb\u627e\u505c\u8f66\u533a“);
????????
????????jbtnLookUpArea.addActionListener(new?ActionListener()?{
????????????public?void?actionPerformed(ActionEvent?evt)?{
????????????????jbtnLookUpAreaActionPerformed(evt);
????????????}
????????});
????????jbtnLookupPosition.setText(“\u5bfb\u627e\u505c\u8f66\u4f4d“);
????????
????????jbtnLookupPosition.addActionListener(new?ActionListener()?{
????????????public?void?actionPerformed(ActionEvent?evt)?{
????????????????jbtnLookupPositionActionPerformed(evt);
????????????}
????????});
????????jbtnLeftArea.setText(“\u79bb\u5f00\u505c\u8f66\u533a“);
????????
????????jbtnLeftArea.addActionListener(new?ActionListener()?{
????????????public?void?actionPerformed(ActionEvent?evt)?{
????????????????jbtnLeftAreaActionPerformed(evt);
????????????}
????????});
????????jbtnLeftStop.setText(“\u79bb\u5f00\u505c\u8f66\u573a“);
????????
????????jbtnLeftStop.addActionListener(new?ActionListener()?{
????????????p
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????232??2008-09-07?21:03??parkingGarage\.classpath
?????文件????????520??2008-09-07?22:59??parkingGarage\.project
?????文件????????629??2008-09-08?09:54??parkingGarage\.settings\org.eclipse.jdt.core.prefs
?????目錄??????????0??2008-09-18?21:24??parkingGarage\.settings
?????文件????????762??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件????????762??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件????????762??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件????????762??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件????????762??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件????????735??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件???????7417??2008-09-09?09:50??parkingGarage\bin\com\parking\carJfr
?????文件????????525??2008-09-09?09:06??parkingGarage\bin\com\parking\carThread.class
?????文件????????735??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件????????762??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件????????762??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件????????762??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件????????762??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件????????546??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件???????7239??2008-09-08?16:24??parkingGarage\bin\com\parking\Initfr
?????文件????????755??2008-09-08?16:21??parkingGarage\bin\com\parking\WorkFram$1.class
?????文件????????755??2008-09-08?16:21??parkingGarage\bin\com\parking\WorkFram$2.class
?????文件???????4351??2008-09-08?16:21??parkingGarage\bin\com\parking\WorkFram.class
?????目錄??????????0??2008-09-18?21:24??parkingGarage\bin\com\parking
?????目錄??????????0??2008-09-17?11:06??parkingGarage\bin\com
?????目錄??????????0??2008-09-17?11:06??parkingGarage\bin
?????文件??????10181??2008-09-09?09:50??parkingGarage\src\com\parking\carJfr
?????文件????????483??2008-09-09?09:06??parkingGarage\src\com\parking\carThread.java
?????文件??????10249??2008-09-08?16:24??parkingGarage\src\com\parking\Initfr
?????文件???????4617??2008-09-08?16:21??parkingGarage\src\com\parking\WorkFram.java
?????目錄??????????0??2008-09-18?21:24??parkingGarage\src\com\parking
............此處省略6個文件信息
- 上一篇:即時通信系統Java實現
- 下一篇:android 插入彩信數據庫代碼
評論
共有 條評論