版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> ******************</p><p><b> 實踐教學</b></p><p> ******************</p><p><b> 計算機與通信學院</b></p><p><b> 2012年秋季學期</b><
2、;/p><p><b> Java課程設計</b></p><p> 題 目: ATM柜員機模擬 </p><p> 專業(yè)班級: 10級軟件工程 </p><p> 姓 名: </p><p> 學 號: &
3、lt;/p><p> 指導教師: </p><p> 成 績: </p><p><b> 摘要</b></p><p> 通過設計ATM柜員模擬程序,加深自己對Java編程尤其是對Java圖形用戶界面編程的 了解,將自己學到的編程知識融會貫通,同
4、時培養(yǎng)自身面向對象軟件開發(fā)的思維,初步了解軟件開發(fā)的一般流程,提高用Java實際動手能力并增強自己對面向對象的了解。通過這次編程設計,加深了對Java圖形界面編程中各個模塊和組件的應用了解,以及類和類之間的關系,界面排版的處理等。</p><p> 本程序采用Java編寫,模擬ATM柜員機的基本功能,比如存款、取款、修改密碼等。該程序與Mysql數(shù)據庫相連接,可以方便的實現(xiàn)對賬戶的管理,并且界面為AWT組件構建
5、的圖形用戶界面,更好的實現(xiàn)了人機交互的功能。本系統(tǒng)默認的賬戶為123456,密碼為123456,初始化金額為10000。</p><p> 關鍵字: 登陸界面 存款 取款 修改密碼 功能界面</p><p><b> 目錄</b></p><p><b> 摘要I</b></p><p&
6、gt;<b> 序言1</b></p><p> 第一章 系統(tǒng)分析與設計2</p><p> 第二章 詳細設計4</p><p> 第三章 系統(tǒng)測試9</p><p> 第四章 軟件使用說明書12</p><p><b> 設計總結18</b><
7、/p><p><b> 參考文獻19</b></p><p><b> 致謝20</b></p><p><b> 序言</b></p><p> 隨著市場經濟的繁榮發(fā)展,人們的物質生活得到極大的提高,手中的剩余資金也日益增多。受傳統(tǒng)觀念的影響,絕大多數(shù)人喜歡把資金投進
8、銀行,而在需要使用現(xiàn)金的時候再到銀行提取現(xiàn)金。這就導致銀行業(yè)務的的急劇增加。雖然銀行網點越來越多,銀行的工作效率也隨著信息化有較明顯的增長,但是依舊不能滿足廣大用戶的需求。而一味的增加營業(yè)網點,從理論上雖然能稍微的緩解銀行的壓力,但是治標不治本,而且每增加一個網點,不僅要付出昂貴的資金成本,還需要長期投入人力資本,成本非常昂貴。于是ATM機系統(tǒng)就應運而生了,它的出現(xiàn)大大地減輕了銀行的業(yè)務負擔,同時也方便了人民大眾。</p>
9、<p> 本文正是通過設計一個ATM模擬程序來實現(xiàn)ATM機系統(tǒng)的基本功能,充分運用自己所學的Java知識進行設計編程。</p><p> 第一章 系統(tǒng)分析與設計</p><p> 該系統(tǒng)實現(xiàn)的主要功能如下所述:</p><p> 要求使用圖形用戶界面,當輸入給定的卡號和密碼(初始卡號和密碼)時,系統(tǒng)能登陸到ATM柜員機模擬系統(tǒng),用戶可以按照以下規(guī)
10、則進行操作:</p><p> 查詢余額:初始余額為10000元。</p><p> ATM取款:每次取款金額為100的倍數(shù),總額不超過5000元,支取金額不允許透支。</p><p> ATM存款:不能出現(xiàn)負存款。</p><p> 修改密碼:新密碼長度為6位,不允許出現(xiàn)6位萬全相同的情況,只有舊密碼正確,新密碼符合要求,且兩次輸入
11、相同的情況下才可以成功修改密碼</p><p> 因此該程序總共設計了8個類,其中ATM為主類,剩余的類分別實現(xiàn)不同的功能,buttonNumber類實現(xiàn)不同情況下按鍵的響應,queryButton類實現(xiàn)查詢余額功能的入口,changeButtonAction類實現(xiàn)修改密碼功能的入口,inputButtonAction類實現(xiàn)存款的功能入口,withdrawButtonAction類實現(xiàn)取款功能的入口,enter
12、ButtonAction類實現(xiàn)不同情況下確定的相應功能,exitButtonAction類實現(xiàn)退出功能。</p><p> 成員變量enterState在全局中起決定性作用,根據enterState的值的變換,程序實現(xiàn)相應的功能。</p><p> ATM取款機的流程圖如圖1-1所示:</p><p><b> 圖1-1</b></
13、p><p><b> 第二章 詳細設計</b></p><p> ATM主類的詳細設計</p><p> 在該類中定義了所有的成員變量(也包括了AWT的各個組件的定義)和在其中的內部類,并且在主類的構造函數(shù)中加入了與數(shù)據庫連接、測試的相關代碼。同時通過定義函數(shù)CreateUI( )來實現(xiàn)各個成員變量的初始化。</p><p
14、><b> 其中成員變量有:</b></p><p> private JTextArea messageArea;</p><p> private JPanel buttonPanel;</p><p> private JButton buttonName[]={"1","2",&
15、quot;3","4","5","6","7","8","9","0"};</p><p> private JButton queryButton;</p><p> private JButton inputButton;</p
16、><p> private JButton changeButton;</p><p> private JButton withdrawButton;</p><p> private JButton enterButton;</p><p> private JButton exitButton;</p><p&g
17、t; private double balance;</p><p> private double accountAmount;</p><p> private String accountNumber="",accountPin="";</p><p> private int enterState=0;<
18、/p><p> private String s="";</p><p> private String s1="";</p><p> private Connection myCon;</p><p> private Statement myStatement;</p><
19、p> private ResultSet myResultSet;</p><p> buttonNumber類的詳細設計</p><p> 以enterState的不同值為入口,當對0—9這十個數(shù)字進行按鍵操作時,buttonNumber類就會在其內部以if分支結構來做出不同的響應。實現(xiàn)的效果如圖2-1所示:</p><p><b> 圖2
20、-1</b></p><p> queryButtonAction類的詳細設計</p><p> 該類只是通過與數(shù)據庫的連接實現(xiàn)查詢余額功能,比較簡單。</p><p> class queryButtonAction implements ActionListener</p><p><b> {</b&
21、gt;</p><p> public void actionPerformed(ActionEvent e)</p><p><b> {</b></p><p> messageArea.setText("當前余額為:"+accountAmount);</p><p> messageAr
22、ea.append("\n需要繼續(xù)服務請按確定,否則請按退出!");</p><p> enterState=3;</p><p><b> } }</b></p><p> changeButtonAction類的詳細設計</p><p> 該類的實現(xiàn)比其他的類稍微復雜些,通過與確定功能的e
23、nterButtonAction類和buttonNumber類共同協(xié)作,可以達到修改密碼時的要求:新密碼長度不小于6位,不允許出現(xiàn)6位完全相同的情況,只有舊密碼正確,新密碼符合要求,且兩次輸入相同的情況下才可以成功修改密碼。</p><p> class changeButtonAction implements ActionListener{</p><p> public void
24、 actionPerformed(ActionEvent e){</p><p> messageArea.setText("請輸入舊密碼\n");</p><p> enterState = -1;</p><p><b> }</b></p><p><b> }</b&g
25、t;</p><p> inputButtonAction類的詳細設計</p><p> 該類實現(xiàn)存錢的功能,通過與確定功能的enterButtonAction類和buttonNumber類共同協(xié)作,可以達到存款時的要求:不能出現(xiàn)負存款。</p><p> class inputButtonAction implements ActionListener<
26、;/p><p><b> {</b></p><p> public void actionPerformed(ActionEvent e)</p><p><b> {</b></p><p> messageArea.setText("請輸入存款金額:\n");</
27、p><p> enterState = 4;</p><p><b> s="";</b></p><p><b> }</b></p><p><b> }</b></p><p> WithdrawaButtonAction
28、類的詳細設計</p><p> 該類實現(xiàn)取款的功能通過與確定功能的enterButtonAction類和buttonNumber類共同協(xié)作,可以達到取款時的要求:每次取款金額為100的倍數(shù),總額不超過5000元,支取金額不允許透支。</p><p> class withdrawButtonAction implements ActionListener</p><
29、p><b> {</b></p><p> public void actionPerformed(ActionEvent e)</p><p><b> {</b></p><p> messageArea.setText("請輸入取款金額:\n");</p><p&
30、gt; enterState=2;</p><p><b> s=""; </b></p><p><b> }</b></p><p><b> }</b></p><p> exitButtonAction類的詳細設計</p>
31、<p> 該類實現(xiàn)返回初始界面的功能由enterState的具體值來選擇返回。</p><p> class exitButtonAction implements ActionListener</p><p><b> {</b></p><p> public void actionPerformed(ActionEve
32、nt e)</p><p><b> {</b></p><p> enterState=0;</p><p><b> s="";</b></p><p> accountAmount=0;</p><p> accountNumber=&qu
33、ot;";</p><p> accountPin="";</p><p> messageArea.setText("歡迎使用ATM,請輸入帳號:\n");</p><p><b> }</b></p><p><b> }</b><
34、/p><p> enterButtonAction類的詳細設計</p><p> 該類實現(xiàn)各種情況下點擊確定后發(fā)出的響應,通過判斷enterState的值,使用if-else分支結構進行選擇,最終實現(xiàn)各個模塊的功能。</p><p> class enterButtonAction implements ActionListener</p><
35、p><b> {</b></p><p> public void actionPerformed(ActionEvent e)</p><p><b> {</b></p><p> enterState++;</p><p> if(enterState==0)</p&
36、gt;<p><b> {</b></p><p><b> 進入修改密碼模塊</b></p><p><b> }</b></p><p> if(enterState==2)</p><p><b> {</b></p&g
37、t;<p><b> 進入輸入舊密碼模塊</b></p><p><b> }</b></p><p> if(enterState==3)</p><p><b> {</b></p><p><b> 進入取款功能模塊</b>&
38、lt;/p><p><b> }</b></p><p> if(enterState==5)</p><p><b> {</b></p><p><b> 進入存款功能模塊</b></p><p><b> }</b>&l
39、t;/p><p> if(enterState==4 || enterState== 6)</p><p><b> {</b></p><p><b> 回到主界面</b></p><p><b> }</b></p><p><b>
40、 }</b></p><p><b> 第三章 系統(tǒng)測試</b></p><p><b> 測試目標</b></p><p> 測試ATM模擬系統(tǒng)的用戶登錄、修改密碼、取款、存款、查詢余額等功能,保證系統(tǒng)能正確模擬實現(xiàn)ATM柜員機的日常功能,用戶能夠在該系統(tǒng)上完成這幾種ATM柜員機的模擬操作,界面操作逼
41、真,使用方便。</p><p><b> 測試環(huán)境</b></p><p> 確保項目測試環(huán)境符合測試要求,減少嚴重影響測試結果的真實性和正確性的風險。要求:</p><p><b> 硬件環(huán)境:</b></p><p> 普通PC機CPU:Pentium-4以上內存:256M以上
42、硬盤:30G以上</p><p><b> 軟件環(huán)境:</b></p><p> 操作系統(tǒng):Windows 2000/XP/7</p><p> 軟件運行環(huán)境: Eclipse Mysql</p><p><b> 測試方案</b></p><p> 第四章 軟件
43、使用說明書</p><p> 1.登陸界面如圖4-1</p><p><b> 圖4-1</b></p><p> 2.輸入卡號初始值為123456,點擊確定進入輸入密碼界面如圖 4-2、4-3</p><p><b> 圖4-2</b></p><p><b&
44、gt; 圖4-3</b></p><p> 3.進入功能界面,單擊相應的功能按鈕分別進入不同的功能界面(初始金額為10000)。查詢功能如圖4-4所示</p><p><b> 圖4-4</b></p><p> 4.取款功能如圖4-5、4-6所示(若取款金額超過5000系統(tǒng)后會提示錯誤)</p><p&
45、gt;<b> 圖4-5</b></p><p><b> 圖4-6</b></p><p> 5.存款功能如圖4-7、4-8所示:</p><p><b> 圖4-7</b></p><p><b> 圖4-8</b></p>&
46、lt;p> 6.修改密碼功能如圖4-8所示:</p><p><b> 圖4-8</b></p><p><b> 圖4-9</b></p><p><b> 圖4-10</b></p><p><b> 圖4-11</b></p&g
47、t;<p><b> 設計總結</b></p><p> 在課程設計之前,我自己感覺Java學的挺不錯的,所以心里暗暗認為這次課程設計的任務不會很難,但是現(xiàn)實往往是殘酷的,這次課設把我狠狠地打擊了一把,不過也收獲了很多。在這兩個星期的Java課程設計中,我通過查閱書籍、查詢網絡等方法,終于完成了這次的課設任務,對此我感觸頗深。</p><p> 剛
48、開始的時候,做可視化界面時遇到了不少問題,總是想得很好,但自己親自動手寫代碼的時候就犯難了,要么寫不出來,要么寫出來不對,反正亂的是一塌糊涂。現(xiàn)在我總覺得沒有學好Java課程,后來經過一星期的惡補和細心琢磨,終于完成了這一個模塊。</p><p> 再后來,遇上了與數(shù)據庫的連接問題,我又是一番苦苦掙扎,不過最后在老師的指導下都一一克服了,從這個過程中,我明白了自己的知識是非常有限的,有一些后悔自己沒有把課余時間
49、利用好,沒有好好地充實自己,不過現(xiàn)在還不太晚,</p><p> 在距離畢業(yè)的這一年半里,我要好好加油、毫不松懈,同時要培養(yǎng)自己的動手能力,為今后的就業(yè)做好萬全的準備!</p><p><b> 參考文獻</b></p><p> [1]王萌,劉婧,來賓著JAVA程序設計[M]北京冶金:工業(yè)出版社,2004</p><
50、p> [2]黃聰明精通 JAVA程序設計[M]北京:清華大學出版社,2004.4</p><p> [3]王文濤,袁海燕 JAVA實用程序設計100例[M]北京:人民郵電出版社,2005.5</p><p> [4]雍俊海 JAVA程序設計[M]北京:清華大學出版社,2006.8</p><p> [5]劉寶林JAVA程序設計與案例[M]北
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- java課程設計---atm柜臺模擬說明書
- ava課程設計---atm柜臺模擬說明書
- ava課程設計---ATM柜臺模擬說明書.docx
- java課程設計--atm機模擬系統(tǒng)
- java課程設計atm機
- java課程設計--- atm柜員機
- java課程設計-atm柜員機模擬程序資料
- java課程設計報告-- 學籍管理系統(tǒng)說明書
- atm自動取款機系統(tǒng)課程設計說明書
- java課程設計報告---atm柜員機
- java課程設計報告--銀行atm機系統(tǒng)
- 漢諾塔java課程設計說明書
- java網絡課程設計---網絡斗地主說明書
- java課程設計說明書---連連看
- 人事管理系統(tǒng)_java課程設計說明書
- 圖書銷售管理系統(tǒng)-java課程設計說明書
- java餐廳點餐系統(tǒng)課程設計說明書
- java課程設計報告--atm存取款系統(tǒng)
- atm網絡編程cs課程設計--模擬atm機網絡編程
- 萬年歷java課程設計說明書
評論
0/150
提交評論