久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

面向?qū)ο蟪绦蛟O(shè)計(jì)—Java+ATM銀行系統(tǒng)范文大全

時(shí)間:2019-05-12 20:52:00下載本文作者:會(huì)員上傳
簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《面向?qū)ο蟪绦蛟O(shè)計(jì)—Java+ATM銀行系統(tǒng)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《面向?qū)ο蟪绦蛟O(shè)計(jì)—Java+ATM銀行系統(tǒng)》。

第一篇:面向?qū)ο蟪绦蛟O(shè)計(jì)—Java+ATM銀行系統(tǒng)

南華大學(xué)

計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院

課程設(shè)計(jì)報(bào)告

(2008 ~ 2009學(xué)年度

第一

學(xué)期)

課程名稱 面向?qū)ο蟪绦蛟O(shè)計(jì)—Java 課程設(shè)計(jì)名稱

組長(zhǎng) 組員 組員

包偉輝 李

陽(yáng) 包月濤

學(xué)號(hào) 學(xué)號(hào) 學(xué)號(hào)

20064440147 20064440119 20064440146 計(jì)算機(jī)061班

譚敏生

ATM銀行系統(tǒng)

專業(yè) 計(jì)算機(jī)專業(yè) 班級(jí) 地點(diǎn)

宏辰7-103 教師

目 錄

一、系統(tǒng)分析.................................................................................................................3 1.1 系統(tǒng)概述................................................3 1.2.系統(tǒng)需要解決的主要問(wèn)題..................................3 1.3.系統(tǒng)應(yīng)具備的基本功能....................................3 1.4.系統(tǒng)設(shè)計(jì)開(kāi)發(fā)工具與環(huán)境..................................4

二、系統(tǒng)設(shè)計(jì).................................................................................................................5 2.1.概要設(shè)計(jì).................................................5 2.1.1 設(shè)計(jì)思想...............................................6 2.1.2 系統(tǒng)功能模塊劃分........................................6 2.1.3 ATM系統(tǒng)各模塊圖........................................6 2.1.4 數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)........................................7 2.2詳細(xì)設(shè)計(jì).................................................8 2.2.1 管理員窗體模塊組成......................................8 2.2.2 管理員模塊窗體界面及相應(yīng)代碼.............................9 2.2.3 用戶窗體模塊組成.......................................17 2.2.4 用戶模塊窗體界面及相應(yīng)代碼..............................18

三、設(shè)計(jì)小結(jié)................................................23

四、參考文獻(xiàn):..............................................23

/ 23

一、系統(tǒng)分析

在信息高速發(fā)展的當(dāng)今時(shí)代,ATM自動(dòng)取款機(jī)已在日常生活中普遍存在,ATM是Automatic Teller Machine的縮寫(xiě),意思是自動(dòng)柜員機(jī),因大部分用于取款,又稱自動(dòng)取款機(jī)。它是一種高度精密的機(jī)電一體化裝置,利用磁性代碼卡或智能卡實(shí)現(xiàn)金融交易的自助服務(wù),代替銀行柜臺(tái)人員的工作。可提取現(xiàn)金、查詢存款余額、進(jìn)行賬戶之間資金劃撥、余額查詢等工作;還可以進(jìn)行現(xiàn)金存款(實(shí)時(shí)入賬)、支票存款(國(guó)內(nèi)無(wú))、存折補(bǔ)登、中間業(yè)務(wù)等工作。持卡人可以使用信用卡或儲(chǔ)蓄卡,根據(jù)密碼辦理自動(dòng)取款、查詢余額、轉(zhuǎn)賬、現(xiàn)金存款,存折補(bǔ)登,購(gòu)買基金,更改密碼等業(yè)務(wù)。

要實(shí)現(xiàn)這樣一個(gè)系統(tǒng),首先應(yīng)該進(jìn)行需求分析,這樣才能令設(shè)計(jì)出的軟件滿足用戶的各項(xiàng)功能。下面就對(duì)在線考試系統(tǒng)的設(shè)計(jì)進(jìn)行需求分析

1.1系統(tǒng)概述

ATM系統(tǒng)分為前臺(tái)和后臺(tái),前臺(tái)用于用戶的登錄以實(shí)現(xiàn)用戶的取款、存款、轉(zhuǎn)賬、查詢、修改、取卡等功能;后臺(tái)用于管理員管理和維護(hù)用戶的信息實(shí)現(xiàn)的功能為開(kāi)戶、銷戶、查詢、修改用戶的各種信息。

本系統(tǒng)主要以JAVA為開(kāi)發(fā)平臺(tái),采用JAVA+ECLIPSE+ACCESS的開(kāi)發(fā)模式,ATM系統(tǒng)以數(shù)據(jù)庫(kù)為中心,由數(shù)據(jù)庫(kù)控制整個(gè)系統(tǒng)的運(yùn)作。

ATM取款系統(tǒng)的目的是在網(wǎng)絡(luò)上搭建一個(gè)管理員管理系統(tǒng)和用戶取款系統(tǒng),針對(duì)不同的功能進(jìn)行不同的操作。用戶要取款時(shí)只需到ATM自動(dòng)取款機(jī)上登錄就可進(jìn)行取款、存款、轉(zhuǎn)賬、查詢、修改、取卡等操作,而管理員可在柜臺(tái)前管理和維護(hù)用戶的各種信息。

1.2 系統(tǒng)需要解決的主要問(wèn)題

首先,因?yàn)锳TM取款機(jī)是面向特定的某些對(duì)象的,所以用戶到ATM取款機(jī)進(jìn)入系統(tǒng)操作時(shí)應(yīng)該進(jìn)行身份驗(yàn)證,用戶通過(guò)卡號(hào)驗(yàn)證進(jìn)入ATM取款機(jī)系統(tǒng)后,應(yīng)該能根據(jù)自己的需要進(jìn)行取款、存款、轉(zhuǎn)賬、查詢、修改、取卡等操作,對(duì)于每個(gè)用戶來(lái)說(shuō),ATM自動(dòng)取款機(jī)的功能都就是相同的,但個(gè)人需要操作并不相同。管理員進(jìn)入管理員系統(tǒng),可以查看和修改用戶的信息,管理員系統(tǒng)是基于網(wǎng)絡(luò)環(huán)境,卡號(hào)應(yīng)從服務(wù)器的數(shù)據(jù)庫(kù)隨機(jī)抽取生成的。另外,管理員系統(tǒng)還應(yīng)該對(duì)用戶實(shí)現(xiàn)開(kāi)戶、銷戶、查詢、修改等功能。

1.3 系統(tǒng)應(yīng)具備的基本功能

1.3.1 用戶基本功能

/ 23

用戶登錄:用戶可以用卡及密碼進(jìn)行登錄,登錄后用戶可以進(jìn)行必要的操作。用戶取款功能:用戶可以根據(jù)自己的需要進(jìn)行取款。用戶存款功能:用戶可以利用此功能存入相應(yīng)的金額。用戶查詢功能:用戶可以查詢余額。

用戶改密功能:用戶可以用此功能修改自己銀行卡的密碼。用戶取卡功能:用戶操作完可取卡退出。

1.3.2 管理員基本功能

開(kāi)戶:管理員可以用此功能為用戶辦理銀行卡。銷戶:管理員可取消用戶對(duì)銀行卡的使用權(quán)。查詢:管理員可查詢用戶的基本信息。修改:管理員可以修改用戶的基本信息。改密:管理員可進(jìn)行自行改密。

1.3.3 該系統(tǒng)的額外功能

用戶轉(zhuǎn)帳功能:用戶可以用這個(gè)功能進(jìn)行卡與卡之間的金額轉(zhuǎn)帳。管理員查看IP功能:管理員可查看當(dāng)前IP地址。打印功能:可以打印出各種交易記錄。

1.4 系統(tǒng)設(shè)計(jì)開(kāi)發(fā)工具與環(huán)境

1.4.1.開(kāi)發(fā)工具 Eclipse

1.4.2.開(kāi)發(fā)環(huán)境 ? ? ? ? ? 開(kāi)發(fā)語(yǔ)言:Java、J2SE 數(shù)據(jù)庫(kù):Access 操作系統(tǒng):Windows XP 客戶端:IE 6.0 開(kāi)發(fā)工具:Eclipse 硬件方面:

/ 23

處理器:Intel Pentium 166MX 或更高。

內(nèi)存:512M以上。硬盤空間:1GB以上。顯卡:SVGA顯示適配器 軟件方面:

操作系統(tǒng):Windows 98/ME/2000/XP

二、系統(tǒng)設(shè)計(jì)

2.1 概要設(shè)計(jì)

上圖為ATM銀行系統(tǒng)總模塊功能圖

/ 23

2.1.1 設(shè)計(jì)思想

ATM取款系統(tǒng)需要滿足來(lái)自兩個(gè)方面的需求,這兩個(gè)方面分別是管理員和用戶。用戶的需求是取款、存款、轉(zhuǎn)賬、查詢、修改、取卡等功能;管理人員的功能較為復(fù)雜,包括對(duì)用戶實(shí)現(xiàn)開(kāi)戶、銷戶、查詢、修改和維護(hù)用戶的各種信息。

用戶可以根據(jù)自己的銀行卡通過(guò)ATM機(jī)登錄到用戶系統(tǒng),登錄成功后可進(jìn)行六種操作,分別是取款、存款、轉(zhuǎn)賬、查詢、修改、取卡。不能查看他人的信息。這樣就可以保證其他用戶信息的保密性。

管理人員有對(duì)用戶實(shí)現(xiàn)開(kāi)戶、銷戶、查詢、修改和維護(hù)用戶的各種信息等記錄的權(quán)限,所以需對(duì)管理員登陸模塊進(jìn)行更多的考慮。

2.1.2 系統(tǒng)功能模塊劃分

一般可分為:

用戶模塊:包括取款模塊、存款模塊、轉(zhuǎn)賬模塊、查詢模塊、修改模塊、取卡模塊。

管理員模塊:包括文件模塊、系統(tǒng)管理模塊、操作模塊、關(guān)于模塊、交易記錄模塊。其中文件模塊包括:開(kāi)戶、銷戶。系統(tǒng)模塊包括:改密、注銷。操作模塊包括:查詢、修改。關(guān)于模塊包括:版本。交易模塊包括:打印。(各模塊功能圖:見(jiàn)P5 2.1)

2.1.3 ATM銀行系統(tǒng)各模塊圖

在概念設(shè)計(jì)階段中,設(shè)計(jì)人員從用戶的角度看待數(shù)據(jù)及處理要求和約束,產(chǎn)生一個(gè)反映用戶觀點(diǎn)的概念模式。然后再把概念模式轉(zhuǎn)換成邏輯模式。將概念設(shè)計(jì)從設(shè)計(jì)過(guò)程中獨(dú)立開(kāi)來(lái),使各階段的任務(wù)相對(duì)單一化,設(shè)計(jì)復(fù)雜程度大大降低,不受特定DBMS的限制。

各個(gè)E-R圖分析如下:

用戶系統(tǒng)E-R實(shí)圖

/ 23

管理員系統(tǒng)E-R實(shí)圖

2.1.4 數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)

由于概念設(shè)計(jì)的結(jié)果是ER圖,DBMS一般采用關(guān)系型(我們所使用的MS ACCESS就是關(guān)系型的DBMS),因此數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)過(guò)程就是把ER圖轉(zhuǎn)化為關(guān)系模式的過(guò)程。由于關(guān)系模型所具有的優(yōu)點(diǎn),邏輯設(shè)計(jì)可以充分運(yùn)用關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論,使設(shè)計(jì)過(guò)程形式化地進(jìn)行。設(shè)計(jì)結(jié)果是一組關(guān)系模式的定義。1.數(shù)據(jù)字典

取款=卡號(hào)+密碼+取款金額。查詢=卡號(hào)+密碼+查詢余額。存款=卡號(hào)+密碼+存款金額。改密=卡號(hào)+密碼+舊密碼+新密碼。轉(zhuǎn)賬=卡號(hào)+密碼+收款人卡號(hào)。

開(kāi)戶=客戶編號(hào)+姓名+身份證+電話+地址+卡號(hào)+貨幣類型+存款類型+金額+密碼+余額+開(kāi)戶日期

銷戶=卡號(hào)

打印=交易日期+卡號(hào)+交易類型+交易金額 2.具體表——數(shù)據(jù)庫(kù)(Bank.mdb)

表一(管理員-admin)字段及內(nèi)容

/ 23

表二(用戶表-userInfo)字段及內(nèi)容

表三(卡號(hào)表-cardInfo)字段及內(nèi)容

表四(交易表-transInfo)字段及內(nèi)容

2.2詳細(xì)設(shè)計(jì)

2.2.1 管理員窗體模塊組成

/ 23

1.文件模塊

功能: 文件模塊包括開(kāi)戶和銷戶兩個(gè)小模塊,開(kāi)戶可以為用戶辦理銀行卡,銷戶可以取消用戶的卡號(hào)。

2.系統(tǒng)管理模塊

功能:系統(tǒng)管理模塊包括改密和注銷兩個(gè)小模塊,通過(guò)改密功能,管理員可自行修改密碼,注銷可返回到登錄界。

3.操作模塊

功能:操作模塊包括查詢、修改和查看IP三個(gè)小模塊,其中,查詢中還包括查詢用戶信息和查詢卡信息模塊;修改中還包括修改用戶信息和修改卡信息模塊;查看IP就是查看當(dāng)前工作的IP。

4. 交易記錄模塊

功能:交易記錄模塊包括打印小模塊,可以打印出用戶各種交易情況。

2.2.2 管理員模塊窗體界面及相應(yīng)代碼、窗體界面說(shuō)明(1)登錄界面

管理員登錄由管理員名和密碼構(gòu)成,在管理員輸入管理員名和密碼后,系統(tǒng)首先驗(yàn)證輸入字符的有效性,然后調(diào)用數(shù)據(jù)庫(kù)查看此管理員名是否存在或密碼是否正確,最后判斷管理員權(quán)限確定操作員還是管理員,并賦與不同的權(quán)限。代碼如下:

/ 23

代碼如下:if(jTextField.getText().equals(“")||jPasswordField.getPassword().equals(”“)&&jPasswordField1.getPassword().equals(”“)){ JOptionPane.showMessageDialog(null, ”請(qǐng)先選擇登陸角色!“);}else{

if(bb){ if(jTextField.getText().equals(”admin“)||jTextField.getText().equals(”admin1“)||jTextField.getText().equals(”admin2“)){

}

MFrm m=new MFrm();m.setVisible(true);close();Connection con;con=db.getConn();user=String.valueOf(jTextField.getText());String pass=String.valueOf(jPasswordField.getPassword());boolean bb=db.isValid(con, user, pass);}else{ if(i==0)else {

} } JOptionPane.showMessageDialog(null, ”該管理員不存在!“);} i--;JOptionPane.showMessageDialog(null, ”密碼輸錯(cuò)3次!請(qǐng)到柜臺(tái)改密碼!“);JOptionPane.showMessageDialog(null, ”密碼錯(cuò)誤!請(qǐng)重新輸入!“);}else{(2)主界面

/ 23

(3)開(kāi)戶界面

代碼如下:

public void del(){

Sql dbc = new Sql();dbc.getConn();int row = jTable.getSelectedRow();System.out.println(row);if(row < 0){ javax.swing.JOptionPane.showMessageDialog(null, ”您還沒(méi)有選中要?jiǎng)h除的信息!“);return;} Object value = jTable.getValueAt(row, 0);String id = value.toString();System.out.println(id);int returnValue;returnValue = JOptionPane.showConfirmDialog(this, ”確實(shí)要?jiǎng)h除該記錄嗎?“, ”確認(rèn)刪除“, JOptionPane.YES_NO_OPTION);

if(returnValue == JOptionPane.YES_OPTION){ if(dbc.executeUpdateSQL(”DELETE FROM cardInfo WHERE cardID ='“ + id+”'“)){ javax.swing.JOptionPane.showMessageDialog(this,”卡號(hào)為“ + id + ”的顧客信息已成功被

/ 23

刪除!請(qǐng)刷新!“);} else { javax.swing.JOptionPane.showMessageDialog(this, ”刪除失??!請(qǐng)?jiān)僭??!?;} }else

return;}

(4)銷戶界面

代碼如下:

if(jTextField.getText().equals(”“)

||

jTextField1.getText().equals(”“)

|| ||jTextField2.getText().equals(”“)|| jTextField4.getText().equals(”“)){

javax.swing.JOptionPane.showMessageDialog(null, ”各欄不能為空,請(qǐng)重填!“);} else { try { Integer.parseInt(jTextField.getText());} catch(NumberFormatException ex){

return;

jTextField3.getText().equals(”“)javax.swing.JOptionPane.showMessageDialog(null,”請(qǐng)確保數(shù)量欄及單價(jià)欄為數(shù)字!“);} if(Integer.parseInt(jTextField.getText())< 0){ } Sql dbc = new Sql();dbc.getConn();return;javax.swing.JOptionPane.showMessageDialog(null,”不能有負(fù)數(shù)!“);if((dbc.executeUpdateSQL(”INSERT into userInfo VALUES(“ + jTextField.getText()+”,'“ + jTextField1.getText()+ ”','“ +jTextField2.getText()+ ”','“ +jTextField3.getText()+ ”','“ +jTextField4.getText()+ ”')“))&&(dbc.executeUpdateSQL(”INSERT into cardInfo(cardID,customerID,savingType,curType,openDate,openMoney,pass,balance)VALUES('“ + jTextField5.getText()+”',“ + jTextField.getText()+”,'“+ jComboBox1.getSelectedItem()+”','“+ jComboBox.getSelectedItem()+”','“ + jTextField8.getText()+”','“+Integer.valueOf(jTextField9.getText())+”','“+String.valueOf(jPasswordField.getPassword())+”','“+Integer.valueOf(jTextField6.getText())+”')“))){javax.swing.JOptionPane

/ 23

.showMessageDialog(null, ”記錄插入成功!“);jTextField.setText(”“);jTextField1.setText(”“);jTextField2.setText(”“);jTextField3.setText(”“);jTextField4.setText(”“);jTextField5.setText(”“);jTextField8.setText(”“);jTextField9.setText(”“);jTextField6.setText(”“);jPasswordField.setText(”“);} else { javax.swing.JOptionPane.showMessageDialog(null, ”該記錄插入失??!請(qǐng)您重試。“);} }(5).改密界面

代碼如下:

public void quer(){ if(jPasswordField.getPassword().equals(”“)|| jPasswordField1.getPassword().equals(”“)||jTextField.getText().equals(”“)){ avax.swing.JOptionPane.showMessageDialog(this, ”任何一欄不能為空!“);} else { Sql dbc = new Sql();dbc.getConn();boolean success = false;ResultSet rs = dbc.executeQuery(”SELECT * FROM admin“);try { while(rs.next()){ if(jTextField.getText().equals(rs.getString(”user“))|| jPasswordField.getPassword().equals(rs.getString(”pass“))){ success = true;} } if(success){ if(dbc.executeUpdateSQL(”UPDATE admin SET pass = '“

+String.valueOf(jPasswordField1.getPassword())+ ”' where user='“+UserFrm.user+”'“)){ javax.swing.JOptionPane.showMessageDialog(this,”密碼修改成功。“);} else { javax.swing.JOptionPane.showMessageDialog(this, ”密碼修改失敗,請(qǐng)重試?!?;} } else { javax.swing.JOptionPane.showMessageDialog(this,”用戶名或原始密碼錯(cuò)誤!請(qǐng)重新確認(rèn)!“);return;} } catch(SQLException ex)

/ 23

{ javax.swing.JOptionPane.showMessageDialog(this,ex.getMessage().toString());return;}}}(6)查詢界面

代碼如下:

public void select(){

if(jTextField.getText().equals(”“)){ javax.swing.JOptionPane.showMessageDialog(this,”請(qǐng)輸入查詢信息“);return;

} String sql=”“;if(((String)jComboBox.getSelectedItem()).equals(”顧客編號(hào)“)){ sql=”select * from userInfo where customerID='“+jTextField.getText()+”'“;}else if(((String)jComboBox.getSelectedItem()).equals(”顧客姓名“)){ sql=”select * from userInfo where customerName='“+jTextField.getText()+”'“;}else if(((String)jComboBox.getSelectedItem()).equals(”身份證“)){ } con=dbc.getConn();int count=0;ResultSet rs=dbc.executeQuery(sql);try{

while(rs.next()){ } rs.close();Object[][] cells=new Object[count][9];int i=0;rs=dbc.executeQuery(sql);while(rs.next()){

cells[i]=new Object[]{rs.getString(1),rs.getString(2),};i++;

/ 23 sql=”select * from userInfo where PID='“+jTextField.getText()+”'“;count++;rs.getString(3),rs.getString(4), rs.getString(5)

}

} } jTable=new JTable(cells,colnames);jScrollPane.setViewportView(jTable);javax.swing.JOptionPane.showMessageDialog(null, ex.getMessage().toString());String[] colnames={”顧客編號(hào)“,”顧客姓名“,”身份證號(hào)“,”聯(lián)系電話“,”居住地址“};}catch(SQLException ex){(7)修改界面

代碼如下:

public void quer(){ db.getConn();ResultSet rs = db.executeQuery(”SELECT * FROM cardInfo“);try {if(db.executeUpdateSQL(”UPDATE cardInfo SET savingType ='“ +

jComboBox1.getSelectedItem()+”',curType='“+jComboBox.getSelectedItem()+”',IsReportLoss =“ + flag+ ” WHERE cardID ='“ + jTextField.getText().trim()+”'“)){ javax.swing.JOptionPane.showMessageDialog(this,”信息修改成功?!?;} else { javax.swing.JOptionPane.showMessageDialog(this, ”信息修改失敗,請(qǐng)重試。“);} } catch(Exception ex){ javax.swing.JOptionPane.showMessageDialog(this,ex.getMessage().toString());} }(8)IP界面

代碼如下:import java.net.* InetAddress id public void inet(){

/ 23

try{

id=InetAddress.getLocalHost();er.printStackTrace();}catch(Exception er){ } System.out.println(id);javax.swing.JOptionPane.showMessageDialog(null, ”本機(jī)ip地址:“+id);}(9)打印界面

代碼如下:

DY d[]=new DY[1];d[0]=newDY(jTextField.getText(),jTextField1.getText(),jTextField2.getText(),jTextField3.getText());File file=new File(”D:java 作業(yè)DBATM文檔.txt“);DY da=new DY();da.writerIO(d, file);da.readerIO(file);JOptionPane.showMessageDialog(null, ”交易記錄打印成功“);close();try{

} DY(String cardID,String transType,String transmoney,String transDate){

} public String getcardID(){

}

/ 23

if(!file.exists())

} file.delete();file.createNewFile();e1.printStackTrace();else

}catch(Exception e1){ this.cardID=cardID;this.transType=transType;this.transMoney=transmoney;this.transDate=transDate;return cardID;public String gettransDate(){

} public String gettransMoney(){

} public String gettransType(){

} public void writerIO(DY[] d,File f){

}

} public void readerIO(File f){

} } try{

fr=new FileReader(f);dr=new BufferedReader(fr);String str;while((str=dr.readLine())!=null)System.out.println(str);dr.close();e1.printStackTrace();

} dw.close();em.printStackTrace();}catch(Exception em){ try{

if(!f.exists()){ } dw=new BufferedWriter(new FileWriter(f));for(int i=0;i

/ 23

1.取款模塊

功能:用戶可以直接到ATM取款機(jī)提取現(xiàn)金。2.查詢模塊模塊

功能:用戶可以查詢余額。3.存款模塊模塊

功能:用戶可以把現(xiàn)金存到銀行。4.改密模塊

功能:用戶可以修改自己銀行卡的密碼。5. 轉(zhuǎn)賬模塊

功能:用戶可以用此功能實(shí)現(xiàn)與其他用戶之間資金流轉(zhuǎn)。6.取卡模塊

功能:當(dāng)用戶完成操作后就可以取卡退出。

2.2.4 用戶模塊窗體界面及相應(yīng)代碼 窗體界面說(shuō)明(要有界面的操作說(shuō)明)(1)登錄界面

此模塊所要完成的就是用戶和管理員的登錄,只要選擇哪個(gè)角色登錄就可以了

用戶登錄由卡號(hào)和密碼構(gòu)成,在用戶輸入卡號(hào)和密碼后,系統(tǒng)首先驗(yàn)證輸入字符的有效性,然后調(diào)用數(shù)據(jù)庫(kù)查看此用戶名是否存在或密碼是否正確,最后判斷用戶權(quán)限,管理員登錄由管理員名和密碼構(gòu)成,在管理員輸入管理員名和密碼后,系統(tǒng)首先驗(yàn)證輸入字符的有效性,然后調(diào)用數(shù)據(jù)庫(kù)查看此管理員名是否存在或密碼是否正確,最后判斷管理員權(quán)限確定操作員還是管理員,并賦與不同的權(quán)限。代碼如下:

/ 23

代碼如下:

if(jPasswordField1.getPassword().equals(”“)){ JOptionPane.showMessageDialog(null, ”請(qǐng)先選擇登陸角色!“);}else{ con=db.getConn();cardID=String.valueOf(jComboBox.getSelectedItem());String pass=String.valueOf(jPasswordField1.getPassword());boolean bb=db.isValid1(con, cardID, pass);

if(bb){ UMFrm ym=new UMFrm();ym.setVisible(true);close();}else{

if(i==0)JOptionPane.showMessageDialog(null, ”密碼輸錯(cuò)3次!請(qǐng)到柜臺(tái)改密碼!“);else { i--;JOptionPane.showMessageDialog(null, ”密碼錯(cuò)誤!請(qǐng)重新輸入!“);} } }

(2)用戶主界面

(3)取款界面

/ 23

代碼如下:

String a=String.valueOf(jTextField.getText());int aa=Integer.parseInt(a);try{ con=db.getConn();st=con.createStatement();ResultSet rs=db.executeQuery(”select * from cardInfo where cardID='“+UserFrm.cardID+”'“);if(rs.next()){ int ia=Integer.parseInt(rs.getString(”balance“));if(ia>aa){ int i=Integer.parseInt(rs.getString(”balance“))-aa;rs=db.executeQuery(”update cardInfo set balance='“+i+”' where cardID='“+UserFrm.cardID+”'“);if(db.executeUpdateSQL(”update transInfo set transMoney='“+i+”',transType='“+”支取“+”' where cardID='“+UserFrm.cardID+”'“))javax.swing.JOptionPane.showMessageDialog(null, ”取款成功!“);rs.close();}else

javax.swing.JOptionPane.showMessageDialog(null, ”余額不足不能取款!“);} }catch(SQLException ee){ ee.printStackTrace();} UMFrm um=new UMFrm();um.setVisible(true);close();}

(4)存款界面

代碼如下:

String a=String.valueOf(jTextField.getText());

/ 23

} int aa=Integer.parseInt(a);try{

}

UMFrm um=new UMFrm();um.setVisible(true);close();con=db.getConn();

st=con.createStatement();ResultSet rs=db.executeQuery(”select * from cardInfo where if(rs.next()){

int i=Integer.parseInt(rs.getString(“balance”))+aa;rs=db.executeQuery(“update cardInfo set balance='”+i+“' where if(db.executeUpdateSQL(”update transInfo set cardID='“+UserFrm.cardID+”'“);cardID='”+UserFrm.cardID+“'”);transMoney='“+aa+”',transType='“+”存入“+”' where cardID='“+UserFrm.cardID+”'“))javax.swing.JOptionPane.showMessageDialog(null, ”存款成功!“);

} ee.printStackTrace();rs.close();}catch(SQLException ee){(5)查詢界面

代碼如下:public void yu(){

}

/ 23

con=db.getConn();try{

} st=con.createStatement();String sql=”select * from cardInfo where cardID='“+UserFrm.cardID+”'“;ResultSet rs=db.executeQuery(sql);if(rs.next()){

} ee.printStackTrace();jTextField.setText(rs.getString(”balance“));jTextField.setEnabled(false);}catch(SQLException ee){(6)修改界面

代碼如下:if(jPasswordField.getPassword().equals(”“)||jPasswordField2.getPassword().equals(”“)||jPasswordField2.getPassword().equals(”“)){ javax.swing.JOptionPane.showMessageDialog(null,”密碼不能為空!“);}else{

try{

} con=db.getConn();st=con.createStatement();ResultSet rs=db.executeQuery(”select * from cardInfo where cardID='“+UserFrm.cardID+”'“);if(rs.next()){

rs=db.executeQuery(”update cardInfo set javax.swing.JOptionPane.showMessageDialog(null, “密碼修改成功!”);

rs.close();

UMFrm um=new UMFrm();um.setVisible(true);close();pass='“+String.valueOf(jPasswordField2.getPassword())+”' where cardID='“+UserFrm.cardID+”'“);} } ee.printStackTrace();

}catch(SQLException ee){(7)轉(zhuǎn)帳界面

代碼如下:try{

con=db.getConn();st=con.createStatement();ResultSet rs=db.executeQuery(”select * from cardInfo where String aa=String.valueOf(jTextField2.getText());

/ 23

cardID='“+UserFrm.cardID+”'“);

}

int a=Integer.parseInt(aa);if(rs.next()){

} ee.printStackTrace();if(UserFrm.cardID==UserFrm.cardID){ int i=Integer.parseInt(rs.getString(”balance“))-a;rs=db.executeQuery(”update

cardInfo

set

balance='“+i+”'

where cardID='“+UserFrm.cardID+”'“);int ii=Integer.parseInt(rs.getString(”balance“))+a;rs=db.executeQuery(”update cardInfo set balance='“+ii+”' where javax.swing.JOptionPane.showMessageDialog(null, “轉(zhuǎn)帳成功!”);

}

rs.close();UMFrm um=new UMFrm();um.setVisible(true);close();cardID='“+jTextField.getText()+”'");}catch(SQLException ee){ }

三、設(shè)計(jì)小結(jié)

在這次課程設(shè)計(jì)中,我們第一次全面應(yīng)用現(xiàn)代軟件工程技術(shù),從需求分析開(kāi)始,通過(guò)需求收集,系統(tǒng)流程分析,構(gòu)建數(shù)據(jù)流圖和實(shí)體-關(guān)系圖,對(duì)實(shí)際需求建模。然后又通過(guò)概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼編寫(xiě)和系統(tǒng)測(cè)試等層層遞進(jìn),在建立文檔的同時(shí)學(xué)習(xí)編程技術(shù),終于在小組成員的共同努力下,完成了文檔的編寫(xiě)、代碼的實(shí)現(xiàn)以及軟件的測(cè)試。

通過(guò)這次課程設(shè)計(jì)使我們對(duì)Eclipse有了一定的了解,也對(duì)Java編程有了初步的認(rèn)識(shí),懂得如何從代碼的層次上使用Eclipse圖形界面及控件。代碼還有許多值得優(yōu)化的地方,界面的美化和可操作性上還有可以提高的余地。

四、參考文獻(xiàn)

[1] 陳松喬等.現(xiàn)代軟件工程.北京:清華大學(xué)出版社,2004 [2] 張白一等.面向?qū)ο蟪绦蛟O(shè)計(jì)——Java(第二版).西安:西安電子科技大學(xué)出版社,2006 [3] Laszlo Michael J.面向?qū)ο蟪绦蛟O(shè)計(jì)——圖形應(yīng)用實(shí)例[M].楊秀梅等,譯.北京:機(jī)械工程出版社,2002

/ 23

第二篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱

《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱

課程名稱:信息內(nèi)容安全 課程代碼:042504 總 學(xué) 時(shí):64 學(xué)

分:2

課程類型:專業(yè)必修課 適用專業(yè): 信息安全專業(yè) 制 訂 人:徐雪飛 審 定 人:肖

文 制訂日期:2015年3月

《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱

一、課程性質(zhì)、目的和任務(wù)

C#語(yǔ)言是.NET平臺(tái)上的核心開(kāi)發(fā)語(yǔ)言,具有簡(jiǎn)單易學(xué)、類型安全、完全面向?qū)ο蟮忍匦?,是一門面向現(xiàn)代軟件工程的主流程序設(shè)計(jì)語(yǔ)言。本課程系統(tǒng)地介紹C#語(yǔ)言的結(jié)構(gòu)化設(shè)計(jì)、面向?qū)ο?、泛型、商業(yè)開(kāi)發(fā)等功能要素,使學(xué)生在掌握程序設(shè)計(jì)的基本方法和技巧,培養(yǎng)利用計(jì)算機(jī)解決實(shí)際問(wèn)題的能力,以滿足專業(yè)課應(yīng)用和繼續(xù)學(xué)習(xí)的需要。

二、教學(xué)基本要求

通過(guò)學(xué)習(xí)本課程,要求學(xué)生能夠熟悉C#語(yǔ)言的語(yǔ)法和類型系統(tǒng),掌握面向?qū)ο蟪绦蛟O(shè)計(jì)和泛型程序設(shè)計(jì)的基本方法,并具有商業(yè)應(yīng)用開(kāi)發(fā)的基本能力,能靈活地使用C#語(yǔ)言及Visual Studio.NET開(kāi)發(fā)環(huán)境解決一般性編程問(wèn)題。

三、教學(xué)內(nèi)容

1、緒論(教學(xué)2學(xué)時(shí),上機(jī)2學(xué)時(shí))

教學(xué)內(nèi)容:

(1).NET技術(shù)和框架結(jié)構(gòu)簡(jiǎn)介(2)C#語(yǔ)言概貌

(3)面向?qū)ο蟮幕靖拍?/p>

教學(xué)目的:使學(xué)生對(duì).NET平臺(tái)和C#有一個(gè)綜合性的了解。

2、C#語(yǔ)法基礎(chǔ)(教學(xué)6學(xué)時(shí),上機(jī)4學(xué)時(shí))

教學(xué)內(nèi)容:(1)數(shù)據(jù)類型(2)值和方法(3)表達(dá)式(4)控制語(yǔ)句

教學(xué)目的:使學(xué)生基本掌握C#語(yǔ)言的類型系統(tǒng)和基本語(yǔ)法結(jié)構(gòu)。

3、類和繼承(教學(xué)4學(xué)時(shí),上機(jī)4學(xué)時(shí))

教學(xué)內(nèi)容:

(1)類的數(shù)據(jù)成員和各種函數(shù)成員(2)繼承和多態(tài)(3).NET常用類型(4)接口與實(shí)現(xiàn)

教學(xué)目的:使學(xué)生進(jìn)一步掌握類型的定義和使用方法,掌握.NET類庫(kù)中一些典型類的用法;深入理解繼承和多態(tài)性的概念,從而掌握面向?qū)ο筌浖芍赜眯缘年P(guān)鍵技術(shù)。

4、Windows窗體界面(教學(xué)2學(xué)時(shí),上機(jī)2學(xué)時(shí))

教學(xué)內(nèi)容:

(1)Windows Form編程技術(shù)(2)WPF編程技術(shù)

(3)繪圖、動(dòng)畫(huà)和媒體 教學(xué)目的:使學(xué)生掌握Windows程序界面設(shè)計(jì)的基本要素,能夠使用Windows Form和WPF編程技術(shù)開(kāi)發(fā)交互式圖形界面應(yīng)用程序。

5、泛型(教學(xué)4學(xué)時(shí),上機(jī)2學(xué)時(shí))

教學(xué)內(nèi)容:

(1)泛型的定義與使用(2)元組和可空類型的用法(3)泛型集合與循環(huán)遍歷

(4)匿名方法和Lambda表達(dá)式

教學(xué)目的:使學(xué)生掌握泛型程序設(shè)計(jì)的基本概念,能夠利用類型抽象和操作抽象開(kāi)發(fā)出高可適的軟件程序。

6、異常處理(教學(xué)1學(xué)時(shí))

教學(xué)內(nèi)容:

(1)C#異常處理結(jié)構(gòu)

(2)主動(dòng)引發(fā)異常和自定義異常

教學(xué)目的:使學(xué)生能夠通過(guò)異常處理來(lái)提高程序可靠性。

7、文件操作(教學(xué)1學(xué)時(shí),上機(jī)1學(xué)時(shí))

教學(xué)內(nèi)容:

(1)驅(qū)動(dòng)器、目錄和文件(2)文件流和數(shù)據(jù)流

教學(xué)目的:使學(xué)生掌握在C#程序中進(jìn)行磁盤文件存取的基本技術(shù)。

8、數(shù)據(jù)庫(kù)訪問(wèn)(教學(xué)2學(xué)時(shí),上機(jī)1學(xué)時(shí))

教學(xué)內(nèi)容:

(1)ADO.NET聯(lián)機(jī)數(shù)據(jù)訪問(wèn)(2)ADO.NET脫機(jī)數(shù)據(jù)訪問(wèn)

教學(xué)目的:使學(xué)生掌握C#程序中進(jìn)行數(shù)據(jù)庫(kù)存取的基本技術(shù)。

9、綜合練習(xí)(教學(xué)2學(xué)時(shí),上機(jī)8學(xué)時(shí))教學(xué)內(nèi)容:

(1)進(jìn)程和線程

(2)ASP.NET網(wǎng)絡(luò)程序設(shè)計(jì)

(3)采用案例驅(qū)動(dòng)的方式,綜合運(yùn)用C#編程技術(shù)開(kāi)發(fā)較為完整的軟件程序。教學(xué)目的:提高學(xué)生軟件設(shè)計(jì)的綜合能力。

五、教學(xué)方法與手段

講授法、討論法、多媒體教學(xué)、實(shí)驗(yàn)教學(xué)。

六、考核方式

考試成績(jī)占70%,平時(shí)成績(jī)占30%。閉卷考試。

七、推薦教材和教學(xué)參考書(shū)

材:《C#程序設(shè)計(jì)基礎(chǔ)》第3版,鄭宇軍,石海鶴,王衛(wèi)紅,清華大學(xué)出版社,2014年。參考書(shū):

1、《C#應(yīng)用開(kāi)發(fā)與實(shí)踐》,曾憲權(quán)、李梅蓮 等,清華大學(xué)出版社,2015年

2、《C#編程實(shí)戰(zhàn)寶典》,付強(qiáng)、丁寧 等,清華大學(xué)出版社,2014年。

第三篇:面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)大綱

面向?qū)ο蟪绦蛟O(shè)計(jì)(專業(yè)限選課)Object-Oriented Programming 【課程編號(hào)】XZ26175 【學(xué)分?jǐn)?shù)】3 【學(xué)時(shí)數(shù)】60=38+22

【課程類別】專業(yè)限選 【編寫(xiě)日期】2010.3.30 【先修課程】C語(yǔ)言程序設(shè)計(jì)、計(jì)算機(jī)應(yīng)用基礎(chǔ)

【適用專業(yè)】通信工程

一、教學(xué)目的、任務(wù)

通過(guò)學(xué)習(xí),使學(xué)生深刻理解和領(lǐng)會(huì)面向?qū)ο蟮幕舅枷牒突咎卣?,掌握面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言C++語(yǔ)言的基本概念、基本語(yǔ)法以及面向?qū)ο蟪绦蛟O(shè)計(jì)的基本方法;使學(xué)生養(yǎng)成面向?qū)ο蟮木幊趟季S習(xí)慣。

二、課程教學(xué)的基本要求

1.理解面向?qū)ο蟮幕靖拍詈褪褂妹嫦驅(qū)ο蠹夹g(shù)進(jìn)行程序設(shè)計(jì)的基本思想 2.能比較熟練地用C++語(yǔ)言進(jìn)行一般面向?qū)ο蟮某绦蛟O(shè)計(jì)

3.初步掌握面向?qū)ο缶幊汰h(huán)境Visual C++的使用

三、教學(xué)內(nèi)容和學(xué)時(shí)分配(2 + 5 + 14 + 9 + 12 + 7 + 6 + 5 = 60)第一章 面向?qū)ο蟪绦蛟O(shè)計(jì)概述 2 學(xué)時(shí)(課堂講授學(xué)時(shí)2)主要內(nèi)容:

1.什么是面向?qū)ο蟪绦蛟O(shè)計(jì) 2.對(duì)象與類 3.封裝 4.繼承性 5.多態(tài)性

6.面向?qū)ο蟪绦蛟O(shè)計(jì)的語(yǔ)言 教學(xué)要求:

了解什么是面向?qū)ο蟪绦蛟O(shè)計(jì);掌握對(duì)象和類的基本概念;理解面向?qū)ο蟪绦蛟O(shè)計(jì)的基本特征。其它教學(xué)環(huán)節(jié):

安排課外了解面向?qū)ο蟪绦蛟O(shè)計(jì)方面的基本概念。第二章 C++概述 5學(xué)時(shí)(課堂講授學(xué)時(shí)2+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:

1.C++的起源和特點(diǎn) 2.C++源程序的構(gòu)成

3.C++在非面向?qū)ο蠓矫娴囊恍┨匦?教學(xué)要求:

cin和cout的使用;new和delete的運(yùn)算符的使用;函數(shù)的重載;帶缺省參數(shù)的函數(shù);引用; VC++的使用。其它教學(xué)環(huán)節(jié):

實(shí)驗(yàn)1: C++程序設(shè)計(jì)基礎(chǔ)練習(xí)。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.掌握C++程序的基本格式和規(guī)范,學(xué)會(huì)編寫(xiě)簡(jiǎn)單的C++程序。2.掌握C++程序結(jié)構(gòu)的特點(diǎn)。

3.熟悉C++程序基本的輸入輸出操作。

4.掌握C++數(shù)據(jù)類型常量和變量以及修飾符的使用方法。5.熟悉作用域運(yùn)算符的功能和基本使用方法。6.掌握C++內(nèi)存的動(dòng)態(tài)分配和釋放方法。7.理解引用的概念,掌握引用的使用方法。

第三章 類和對(duì)象 14學(xué)時(shí)(課堂講授學(xué)時(shí)8+課程實(shí)驗(yàn)學(xué)時(shí)6)主要內(nèi)容:

1.類與對(duì)象的基本概念 2.構(gòu)造函數(shù)與析構(gòu)函數(shù) 3.對(duì)象數(shù)組與對(duì)象指針 4.向函數(shù)傳遞對(duì)象 5.靜態(tài)成員 6.友元

7.類對(duì)象作為成員 8.常類型 教學(xué)要求:

類的聲明;對(duì)象定義;對(duì)象的成員的訪問(wèn)。訪問(wèn)屬性的理解和運(yùn)用;構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義;對(duì)象數(shù)組的定義和使用;this的指針的理解和使用;類的成員類型為其他類時(shí)如何理解和使用;靜態(tài)成員的理解和運(yùn)用。提供友元機(jī)制的目的;友元聲明方法;提供常類型機(jī)制的目的;各種不同的常類型運(yùn)作方式。其它教學(xué)環(huán)節(jié):

實(shí)驗(yàn)2:類和對(duì)象。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.掌握類、類的數(shù)據(jù)成員、類的成員函數(shù)的定義方式。2.理解類成員的訪問(wèn)控制方式。

3.掌握對(duì)象的定義和操作對(duì)象的方法。

4.理解構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義與執(zhí)行過(guò)程。5.掌握重載構(gòu)造函數(shù)的方法。6.了解拷貝構(gòu)造函數(shù)的方法。實(shí)驗(yàn)3:對(duì)象數(shù)組和對(duì)象指針。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.掌握對(duì)象數(shù)組的定義和使用方法。

2.理解對(duì)象指針的概念,學(xué)會(huì)用指針引用對(duì)象。3.了解this指針的工作方式。

4.掌握靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)的基本使用方法。5.理解友元與友元函數(shù)的作用,掌握其使用方法。

第四章 派生類和繼承 9學(xué)時(shí)(課堂講授學(xué)時(shí)6+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:

1.派生類的概念

2.派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù) 3.基類成員的訪問(wèn) 4.多重繼承 5.賦值兼容規(guī)則 教學(xué)要求:

基類和派生類的基本概念;繼承成員的訪問(wèn)規(guī)則;派生類構(gòu)造函數(shù)和析構(gòu)函數(shù)的運(yùn)行規(guī)則;多重繼承的基本概念;多重繼承中同名二義性如何消除;引入虛基類的目的;繼承類和派生類之間相互賦值規(guī)則用。

其它教學(xué)環(huán)節(jié):

實(shí)驗(yàn)4:派生類與繼承。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.理解類的繼承的概念,能夠定義和使用類的繼承關(guān)系。2.掌握派生類的聲明和定義方法。

3.掌握公有派生和私有派生的訪問(wèn)特性。4.學(xué)習(xí)虛基類在解決問(wèn)題中的作用。

第五章 多態(tài)性 12學(xué)時(shí)(課堂講授學(xué)時(shí)8+課程實(shí)驗(yàn)學(xué)時(shí)4)主要內(nèi)容:

1.編譯時(shí)的多態(tài)性與運(yùn)行時(shí)的多態(tài)性 2.函數(shù)重載 3.運(yùn)算符重載 4.類型轉(zhuǎn)換 5.虛函數(shù) 教學(xué)要求:

多態(tài)的基本概念;實(shí)現(xiàn)運(yùn)算符重載的方法(成員函數(shù));實(shí)現(xiàn)運(yùn)算符重載的方法(友元函數(shù));靜態(tài)聯(lián)編和動(dòng)態(tài)聯(lián)編的基本概念;虛函數(shù)的作用;虛函數(shù)的運(yùn)用。其它教學(xué)環(huán)節(jié):

實(shí)驗(yàn)5:虛函數(shù)和多態(tài)性。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.理解編譯時(shí)的多態(tài)性和運(yùn)行時(shí)的多態(tài)性。2.掌握運(yùn)算符重載的基本方法。3.掌握虛函數(shù)的定義和使用方法。

第六章 模板 7學(xué)時(shí)(課堂講授學(xué)時(shí)4+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:

1.模板的概念

2.函數(shù)模板與模板函數(shù) 3.類模板和模板類 教學(xué)要求:

模板的基本概念;為什么要使用模板;函數(shù)模板和模板函數(shù)的基本概念;函數(shù)模板的聲明和使用;類模板和模板類的基本概念。其它教學(xué)環(huán)節(jié):

實(shí)驗(yàn)6:函數(shù)模板與類模板。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.掌握函數(shù)模板及其聲明方法。2.掌握模板函數(shù)及其生成方法。3.學(xué)習(xí)類模板的聲明與使用方法。

第七章 C++的I/O流類庫(kù) 6學(xué)時(shí)(課堂講授學(xué)時(shí)3+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:

1.C++建立類類庫(kù)的目的 2.預(yù)定義類型的輸入輸出

3.用戶自定義類型的輸入和輸出 教學(xué)要求:

掌握在各種情況下的<<和>>運(yùn)算符的重載。其它教學(xué)環(huán)節(jié):

實(shí)驗(yàn)7:I/O流類庫(kù)。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>

1.掌握流及流類庫(kù)的作用。

2.掌握流類庫(kù)中常用的類及其成員函數(shù)的使用方法。3.掌握重載“<<”和“>>”的方法。

4.掌握控制輸出寬度的函數(shù)width和setw。

5.掌握函數(shù)setosflags和resetiosflags設(shè)置和恢復(fù)對(duì)齊方式、精度、大小寫(xiě)等。

研究教學(xué)內(nèi)容 5學(xué)時(shí)(課程講解和討論學(xué)時(shí))

程序綜合設(shè)計(jì):按照面向?qū)ο蟪绦蜷_(kāi)發(fā)的原則和方法,利用一個(gè)實(shí)例來(lái)講解面向?qū)ο蟪绦蛟O(shè)計(jì)的整個(gè)過(guò)程,然后要求學(xué)生根據(jù)自己的開(kāi)發(fā)經(jīng)驗(yàn)進(jìn)行分組討論,從而幫助學(xué)生進(jìn)一步理解和熟悉面向?qū)ο蟪绦蛟O(shè)計(jì)方法。

四、教學(xué)重點(diǎn)、難點(diǎn)及教學(xué)方法

重點(diǎn):類和對(duì)象的基本概念;對(duì)象定義;對(duì)象的成員的訪問(wèn)。訪問(wèn)屬性的理解和運(yùn)用;構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義;對(duì)象數(shù)組的定義和使用;this的指針的理解和使用?;惡团缮惖幕靖拍?;繼承成員的訪問(wèn)規(guī)則;派生類構(gòu)造函數(shù)和析構(gòu)函數(shù)的運(yùn)行規(guī)則。多態(tài)的基本概念;函數(shù)的重載。

難點(diǎn):多重繼承;虛函數(shù);模板。

教學(xué)方法:課堂授課采用多媒體教學(xué)和分組討論的方法,實(shí)驗(yàn)采用任務(wù)驅(qū)動(dòng)方式。通過(guò)未來(lái)愿景描述和學(xué)以致用的方法來(lái)提高學(xué)生的學(xué)習(xí)興趣,通過(guò)分組交流和師生積極互動(dòng)的方式提高學(xué)生學(xué)習(xí)本門課程的學(xué)習(xí)能力。

五、考核方式及成績(jī)?cè)u(píng)定方式:考試

六、教材及參考書(shū)目

推薦教材:

[1] 《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》,陳維興,林小茶,清華大學(xué)出版社,第2版,2004 參考書(shū):

[1] 《C++面向?qū)ο蟪绦蛟O(shè)計(jì)習(xí)題解析與上機(jī)指導(dǎo)》,陳維興,清華大學(xué)出版社,2003 [2] 《C++程序設(shè)計(jì)基礎(chǔ)》,周靄如,電子工業(yè)出版社,2003 [3] 《C++語(yǔ)言程序設(shè)計(jì)》,鄭莉,清華大學(xué)出版社,2005 修(制)訂人: 審核人:

2010年 3 月30

第四篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱

《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱

課程名稱:面向?qū)ο蟪绦蛟O(shè)計(jì) 英文名稱:Object Oriented Programming)學(xué)分:2 總學(xué)時(shí):36 實(shí)驗(yàn)(上機(jī))學(xué)時(shí): 8 開(kāi)課專業(yè):電子商務(wù)專業(yè)

一、本課程的性質(zhì)、目的和培養(yǎng)目標(biāo)

面向?qū)ο蟪绦蛟O(shè)計(jì)是電子商務(wù)專業(yè)的限定選修課程。面向?qū)ο蟪绦蛟O(shè)計(jì)是當(dāng)今最為流行的程序設(shè)計(jì)方法,本課程以C++語(yǔ)言為核心,全面概述面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念和基本技術(shù)。主要內(nèi)容包括:理解和掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想和技術(shù),掌握C++中的引用和函數(shù)重載、類與對(duì)象、靜態(tài)成員與友元、運(yùn)算符重載、繼承與派生類、多態(tài)與虛函數(shù)等重要概念和技術(shù)。通過(guò)教學(xué)要求學(xué)生基本掌握面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,認(rèn)識(shí)C++是如何支持面向?qū)ο蟪绦蛟O(shè)計(jì)的,培養(yǎng)、訓(xùn)練學(xué)生運(yùn)用面向?qū)ο蠹夹g(shù)進(jìn)行程序設(shè)計(jì)的能力。

二、預(yù)修課程

計(jì)算機(jī)語(yǔ)言與程序設(shè)計(jì)

三、課程內(nèi)容及學(xué)時(shí)分配

第一章 從C語(yǔ)言到C++語(yǔ)言

1.C++語(yǔ)言出現(xiàn)的歷史背景(OOP思想概述)2.C++中的注釋、常量和輸入輸出 3.C++中的變量定義與作用域 4.C++中的函數(shù) 5.C++中的指針與引用

本章學(xué)時(shí)數(shù):4,本章習(xí)題數(shù):4 第二章 類與對(duì)象 1.類 2.對(duì)象

3.構(gòu)造函數(shù)和析構(gòu)函數(shù) 4.對(duì)象及其應(yīng)用 5.對(duì)象的生存期 6.再論程序結(jié)構(gòu) 7.面向?qū)ο蟪绦蛟O(shè)計(jì)

本章學(xué)時(shí)數(shù):6,本章習(xí)題數(shù):6 第三章 靜態(tài)成員與友元 1.拷貝構(gòu)造函數(shù) 2.靜態(tài)數(shù)據(jù)成員 3.靜態(tài)成員函數(shù) 4.友元函數(shù)

本章學(xué)時(shí)數(shù):6,本章習(xí)題數(shù):6 第四章 運(yùn)算符重載 1.運(yùn)算符重載的概念 2.運(yùn)算符重載舉例

本章學(xué)時(shí)數(shù):4,本章習(xí)題數(shù):4 第五章 繼承與多態(tài) 1.繼承的概念 2.單繼承 3.多態(tài)與虛函數(shù)

4.類的分解(類的層次設(shè)計(jì))5.抽象類與純虛函數(shù)

本章學(xué)時(shí)數(shù):6,本章習(xí)題數(shù):6 第六章 I/O流庫(kù)簡(jiǎn)介 1.C++流庫(kù)的結(jié)構(gòu) 2.輸入與輸出 3.格式控制 4.文件

本章學(xué)時(shí)數(shù):2,本章習(xí)題數(shù):2

四、實(shí)驗(yàn)(上機(jī))內(nèi)容和建議學(xué)時(shí)分配 實(shí)驗(yàn)1(4學(xué)時(shí))

要求:定義類,該類至少應(yīng)包括靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù),要求通過(guò)本實(shí)驗(yàn)掌握定義類的基本方法。實(shí)驗(yàn)2(4學(xué)時(shí))

要求:通過(guò)本實(shí)驗(yàn)掌握函數(shù)重載、友元函數(shù)、繼承、虛函數(shù)等的基本使用方法。

五、教材和參考書(shū)目

1.《C++語(yǔ)言基礎(chǔ)教程》,呂鳳翥編著,清華大學(xué)出版社,1999 2.《C++程序設(shè)計(jì)教程》,錢

能主編,清華大學(xué)出版社,1999 3.《The C++ Programming Language》(Third Edition),Bjarne Stroustrup,Addison-Wesley,1997

六、課外學(xué)習(xí)要求

要求課前預(yù)習(xí)下一次課的講課內(nèi)容,課后復(fù)習(xí)本次課的講課內(nèi)容并通過(guò)相應(yīng)的作業(yè)加以消化。

七、考核方式

本課程采用閉卷書(shū)面考試方式為主,其中期終考試占80%,期中10%,平時(shí)作業(yè)、上機(jī)及出勤率10%。

第五篇:面向?qū)ο蟪绦蛟O(shè)計(jì)心得體會(huì)

這次課程設(shè)計(jì)讓我收獲到很多,上個(gè)學(xué)期我們也有過(guò)課程設(shè)計(jì),但是我們都是從網(wǎng)上下一個(gè)程序,連帶著報(bào)告,看一遍程序,修改修改報(bào)告,然后就直接去答辯,都是糊弄糊弄就過(guò)去了,自己根本就沒(méi)有付出過(guò)努力,到現(xiàn)在,那個(gè)程序的內(nèi)容是什么全忘光了。但是這次的課程設(shè)計(jì),雖然老師您的要求十分嚴(yán)格,但是卻是讓我切實(shí)體會(huì)到了自己動(dòng)手的快樂(lè)。要我們自己設(shè)計(jì)一個(gè)管理系統(tǒng),從定題目,到開(kāi)始寫(xiě)代碼,全部都是自己來(lái)。我在開(kāi)始課程設(shè)計(jì)前的兩周就開(kāi)始考慮我課設(shè)的時(shí)候應(yīng)該做什么內(nèi)容,想做一般同學(xué)都能想到的學(xué)生管理系統(tǒng),但是就怕會(huì)有類似的不敢做,冥思苦想了好久,最后才定下的備忘錄管理系統(tǒng),其實(shí)所有的管理系統(tǒng)的本質(zhì)都是一樣的,增,刪,改,查,但是,這些東看似簡(jiǎn)單,做起來(lái)卻難。像我在做增加的時(shí)候,就遇到了問(wèn)題,最后通過(guò)老師的調(diào)試,才發(fā)現(xiàn)原來(lái)是我在開(kāi)始定義字段名的時(shí)候就弄錯(cuò)了。我們其他人也一樣,中間遇到的問(wèn)題,也及時(shí)的請(qǐng)教同學(xué)和老師,原來(lái)在寢室,我們都是開(kāi)著電腦上qq,水人人,看視頻,但是當(dāng)課程設(shè)計(jì)開(kāi)始的時(shí)候,我們這個(gè)寢室都在那做這個(gè)管理系統(tǒng),誰(shuí)誰(shuí)誰(shuí)的查詢不好使了,我們也都停下來(lái)幫她,當(dāng)我們都不解決不了的時(shí)候,我們就和學(xué)得好的男生開(kāi)語(yǔ)音,讓他們教我們,幫我們解決,再解決不了的,我們就來(lái)找老師,在機(jī)房里大家一起努力,攻克難關(guān)。有些時(shí)候,困擾我們很長(zhǎng)時(shí)間的,可能就是一個(gè)小小的逗號(hào),或者是被忽略的空格,這些都是我們上課的時(shí)候沒(méi)有注意的,沒(méi)有好好聽(tīng)課的地方,都在課設(shè)的時(shí)候碰到了,我在做自己的課程設(shè)計(jì)的時(shí)候,我也經(jīng)常出錯(cuò),經(jīng)常忘了一些細(xì)節(jié)的東西,比如登陸窗體的時(shí)候,忘記了在program.cs里把Form1改成LoginForm,我一直在調(diào)試,但是始終出現(xiàn)的是主窗體,登陸窗體始終出不來(lái),最后才想起來(lái)忘了這個(gè)小步驟,但是這也讓我明白,上課的點(diǎn)滴小事,也是非常重要的,除了上課認(rèn)真聽(tīng)講之外,下課了還得很認(rèn)真的看代碼,把代碼的意思弄明白,漸漸的,像數(shù)據(jù)庫(kù)里的表怎么設(shè)計(jì),怎么連接數(shù)據(jù)庫(kù),按鈕怎么設(shè)置,還有很多我都能掌握,所以感覺(jué)這次課程設(shè)計(jì)帶給我很多的,課程設(shè)計(jì)不僅是檢查一個(gè)人知識(shí)掌握了多少,其實(shí)更重要的實(shí)檢測(cè)你的實(shí)踐能力,以及看你是否細(xì)心、是否有縝密的思維,所以,我們要在課設(shè)的時(shí)候加強(qiáng)鍛煉,磨練自己,使自己有更高的提高。

下載面向?qū)ο蟪绦蛟O(shè)計(jì)—Java+ATM銀行系統(tǒng)范文大全word格式文檔
下載面向?qū)ο蟪绦蛟O(shè)計(jì)—Java+ATM銀行系統(tǒng)范文大全.doc
將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    面向?qū)ο蟪绦蛟O(shè)計(jì)實(shí)習(xí)報(bào)告

    《面向?qū)ο蟪绦蛟O(shè)計(jì)》實(shí)習(xí)報(bào)告 班級(jí):電子商務(wù) 學(xué)號(hào):xx 姓名xx 指導(dǎo)教師: 實(shí)習(xí)時(shí)間:2011.12.26-2012.1.6 一、 實(shí)習(xí)目的 經(jīng)過(guò)兩個(gè)周的面向?qū)ο蟪绦蛟O(shè)計(jì)的實(shí)習(xí),讓我再次復(fù)習(xí)了SQL......

    面向?qū)ο蟪绦蛟O(shè)計(jì)實(shí)習(xí)報(bào)告

    《面向?qū)ο蟪绦蛟O(shè)計(jì)》 實(shí)習(xí)報(bào)告 學(xué) 年:20010-2011學(xué)年第一學(xué)期 試驗(yàn)名稱:面向?qū)ο蟪绦蛟O(shè)計(jì) 姓 名:李 芳班 級(jí):電子商務(wù)(本)0902班 學(xué) 號(hào):0902110206 一、 實(shí)習(xí)目的 1.了解SQL Server......

    java面向?qū)ο蟪绦蛟O(shè)計(jì)教案

    武漢大學(xué)珞珈學(xué)院 系/教研室 Java 面 向 對(duì) 象 程 序 設(shè) 計(jì) 課 教 案 主講教師:熊春秀 編寫(xiě)時(shí)間:2011-4-30 第一章:概述 第 1、2 節(jié):面向?qū)ο蟮幕靖拍?、面向?qū)ο蟪绦蛟O(shè)計(jì)概述......

    《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱

    《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱學(xué)時(shí):72 學(xué)分:4 理論學(xué)時(shí):52 實(shí)驗(yàn)學(xué)時(shí):20 面向?qū)I(yè):計(jì)算機(jī)科學(xué)與技術(shù)、專升本 課程代碼:2700410 先開(kāi)課程:計(jì)算機(jī)導(dǎo)論,C語(yǔ)言程序設(shè)計(jì) 課程性......

    面向?qū)ο蟪绦蛟O(shè)計(jì)-教學(xué)大綱-信管

    面向?qū)ο蟪绦蛟O(shè)計(jì)(教學(xué)大綱) Object-oriented programming 課程編碼:05405170 學(xué)分:2.5 課程類別: 專業(yè)基礎(chǔ)課 計(jì)劃學(xué)時(shí):48 其中講課:32 實(shí)驗(yàn)或?qū)嵺`: 上機(jī):16 適用專業(yè):信息管理與信......

    Java面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)大綱

    Java面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)大綱 Object-Oriented Programming with Java Syllabus 課程名稱 課程類別 建設(shè)單位/教研室 前后課程 適用專業(yè)、層次 Java面向?qū)ο蟪绦蛟O(shè)課......

    《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程設(shè)計(jì)教學(xué)大綱

    《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程設(shè)計(jì)教學(xué)大綱 《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程設(shè)計(jì)教學(xué)大綱 中文名稱:《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程設(shè)計(jì)英文名稱:Course Project of Object-Oriented Programm......

    JAVA面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)大綱

    《JAVA面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱 Oriented object Programming in JAVA 編號(hào): 08065121 適用專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)、網(wǎng)絡(luò)工程 學(xué)時(shí)數(shù):32 學(xué)分?jǐn)?shù):2 執(zhí)筆者:田小玲 編寫(xiě)日......

主站蜘蛛池模板: 亚洲国产精品久久一线不卡| 中文午夜人妻无码看片| 熟妇人妻无乱码中文字幕真矢织江| 无码人妻一区二区三区免费看成人| 久久婷婷五月综合色和| 无码日韩精品一区二区三区免费| 国产凸凹视频一区二区| 在线视频观看免费视频18| 台湾佬中文娱乐网22| 亚洲国产果冻传媒av在线观看| 久久综合色天天久久综合图片| 国产精品亚洲αv天堂| 精品国产福利视频在线观看| 日韩a∨精品日韩在线观看| 强行糟蹋人妻hd中文字幕| 大地资源在线观看免费下载| 精品国产一区二区三区av孞弋| 人妻色综合网站| 国产+成+人+亚洲欧洲自线| 和黑人邻居中文字幕在线| 大胸少妇午夜三级| 欧美色欧美亚洲另类二区| 麻豆乱码国产一区二区三区| 99热精品国产三级在线| 国产日产成人免费视频在线观看| 无码欧精品亚洲日韩一区| 四虎av永久在线精品免费观看| 18禁无码无遮挡在线播放| 波多野结衣一区二区三区高清av| 亚洲熟妇无码av在线播放| 丁香六月久久婷婷开心| 国产亚洲精品久久久久久牛牛| 草草地址线路①屁屁影院成人| 忘忧草社区在线播放日本韩国| 中文无码字幕中文有码字幕| 精品人妻va出轨中文字幕| 女邻居丰满的奶水| 国产成人午夜无码电影在线观看| 粗大猛烈进出高潮视频二| 国产成人亚洲精品无码av大片| 国产av一区二区三区无码野战|