JAVA程序設(shè)計(jì)課程教學(xué)大綱
課程編碼:02212307
學(xué)時(shí)數(shù): 90
課程性質(zhì):專業(yè)必修課
先修課程:《高級(jí)語言程序設(shè)計(jì)》、《數(shù)據(jù)結(jié)構(gòu)》
適用專業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)
一、課程的性質(zhì)、目的和任務(wù)
1、課程的性質(zhì)
計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)必修課,適合高年級(jí)學(xué)生。要求能夠把基本概念、基本理論和項(xiàng)目技能融入到具體的Java 程序和集成開發(fā)環(huán)境中去介紹。通過項(xiàng)目實(shí)踐性的案例教學(xué),化繁為簡(jiǎn)、化難為易、深入淺出地介紹基本概念和理論。
2、課程的目的
讓學(xué)生掌握這一在科研和市場(chǎng)應(yīng)用方面非常重要的語言及其技術(shù);通過本課程使學(xué)生掌握java技術(shù)的核心概念,編程方法;培養(yǎng)學(xué)生掌握面向?qū)ο蟮乃枷牒统绦蛟O(shè)計(jì)方法;完成本課程的學(xué)習(xí)后能夠熟練的、綜合應(yīng)用Java技術(shù)和面向?qū)ο蟮乃枷刖帉懗绦蚪鉀Q現(xiàn)實(shí)生活中的問題。
3、課程的任務(wù)
使學(xué)生掌握J(rèn)ava程序設(shè)計(jì)語言,理解面向?qū)ο蟪绦蛟O(shè)計(jì)的思路和方法,掌握網(wǎng)絡(luò)編程的基本技術(shù),培養(yǎng)學(xué)生的編程能力,養(yǎng)成良好編碼的習(xí)慣,為將來參與實(shí)際項(xiàng)目的開發(fā)奠定堅(jiān)實(shí)的基礎(chǔ)。
二、課程教學(xué)內(nèi)容及基本要求
第一章 Java語言概述
[學(xué)時(shí)分配] 2學(xué)時(shí) + 1(課堂實(shí)踐)=3課時(shí)
[主要內(nèi)容]
1.Java的發(fā)展歷史;
2.Java語言的特點(diǎn);
3.與C和C++語言的異同;
4.Java的實(shí)際應(yīng)用簡(jiǎn)介;
5.Java的實(shí)現(xiàn)和運(yùn)行機(jī)制;
6.Java程序開發(fā)與運(yùn)行環(huán)境;
7.Java程序類型和舉例;
8.package和import語句的使用;
9.JavaAPI 文檔。
[教學(xué)重點(diǎn)]
1.Java的實(shí)現(xiàn)和運(yùn)行機(jī)制;
2.Java程序開發(fā)與運(yùn)行環(huán)境;
3.Java程序類型和舉例。
[教學(xué)難點(diǎn)]
1.Java程序開發(fā)與運(yùn)行環(huán)境。
[教學(xué)要求]
1. 了解java 的發(fā)展;
2. 掌握java的特點(diǎn);
3. 掌握J(rèn)ava的運(yùn)行機(jī)制;
4. 掌握J(rèn)ava虛擬機(jī)的作用;
5. 了解常用的開發(fā)環(huán)境;
6. 掌握簡(jiǎn)單的Java程序開發(fā)方法。
第二章 Java語言基礎(chǔ)
[學(xué)時(shí)分配] 5課時(shí) + 2(課堂實(shí)踐)=7課時(shí)
[主要內(nèi)容]
1.基本數(shù)據(jù)類型、關(guān)鍵字和標(biāo)識(shí)符介紹;
2.Java運(yùn)算符和表達(dá)式;
3.簡(jiǎn)單數(shù)據(jù)類型程序舉例;
4.?dāng)?shù)組;
5.分支語句;
6.循環(huán)語句;
7.其他語句。
[教學(xué)重點(diǎn)]
1. 基本數(shù)據(jù)類型、關(guān)鍵字和標(biāo)識(shí)符;
2. Java運(yùn)算符和表達(dá)式;
3.?dāng)?shù)組、分支語句、循環(huán)語句。
[教學(xué)難點(diǎn)]
1. 數(shù)組;
[教學(xué)要求]
1.掌握J(rèn)ava的基本數(shù)據(jù)類型的特征;
2.了解常用的保留字;
3.能夠正確定義標(biāo)識(shí)符;
4.掌握java 的運(yùn)算符的使用;
5.掌握常用的控制語句的使用,分支語句,循環(huán)語句;
6.掌握與轉(zhuǎn)移控制有關(guān)的語句,continue, break ,return 的使用。
第三章 類與對(duì)象
[學(xué)時(shí)分配] 6(講課)+3(課堂實(shí)踐)=9課時(shí)
[主要內(nèi)容]
1.OOP簡(jiǎn)介
2.類的定義(包括成員變量和方法)
3.構(gòu)造方法
4.方法的重載
5. 包(package和import)
6.類成員變量及方法的訪問權(quán)限
7.實(shí)例成員和類成員
8.finalize()方法
[教學(xué)重點(diǎn)]
1. 類的定義(包括成員變量和方法);
2. 構(gòu)造方法、方法的重載;
3.包(package和import);
4.類成員變量及方法的訪問權(quán)限;
5.實(shí)例成員和類成員。
[教學(xué)難點(diǎn)]
1. 包(package和import)、類成員變量及方法的訪問權(quán)限;
[教學(xué)要求]
1.掌握類、對(duì)象、屬性的概念和定義;
2.掌握消息、方法的概念和定義;
3.掌握方法重載的使用;
4.掌握實(shí)例成員和類成員的特點(diǎn);
5.掌握包的概念;
6.掌握封裝性。
第四章 繼承、多態(tài)和接口
[學(xué)時(shí)分配] 6(講課)+4(課堂實(shí)踐)=10課時(shí)
[主要內(nèi)容]
1.繼承(性);
2.final、this、super;
3.多態(tài)性(方法的覆蓋);
4.Object,Class(兩個(gè)類的說明);
5.抽象類和抽象方法 ;
6.接口;
7.嵌套類;
8.Jar文件的介紹。
[教學(xué)重點(diǎn)]
1. 繼承(性)、多態(tài)性(方法的覆蓋);
2. final、this、super;
3. 抽象類和抽象方法、接口。
[教學(xué)難點(diǎn)]
1. 繼承(性)、多態(tài)性(方法的覆蓋);
2. 抽象類和抽象方法、接口。
[教學(xué)要求]
1.掌握繼承性和多態(tài)性;
2.掌握抽象類的使用;
3.掌握接口的使用和抽象類的區(qū)別。
第五章 常用系統(tǒng)類
[學(xué)時(shí)分配] 2(講課)+2(課堂實(shí)踐)=4課時(shí)
[主要內(nèi)容]
1.字符串常量;
2.String類介紹;
3.StringBuffer類介紹;
4.StringTokenizer類的應(yīng)用;
5.字符串與其他數(shù)據(jù)類型的轉(zhuǎn)換;
6.Java.lang包中的主要類;
7.Java數(shù)據(jù)類型封裝類;
8.Java集合框架;
9.Collection,Map,Set,List,Iterator等接口;
10.TreeSet,HashSet;
11.ArrayList,LinkedList,Vector;
12.HashMap,HashTable,TreeMap;
13.Collections;
14.其它工具類(Java.util.*);
15.Date,Calendar,Properties,Random 。
[教學(xué)重點(diǎn)]
1. 字符串常量;String類介紹;StringBuffer類介紹;
2. 字符串與其他數(shù)據(jù)類型的轉(zhuǎn)換;
3. Java數(shù)據(jù)類型封裝類、Java集合框架。
[教學(xué)難點(diǎn)]
1. 字符串與其他數(shù)據(jù)類型的轉(zhuǎn)換;
2. String,StringBuffer類的使用。
[教學(xué)要求]
1.掌握字符串的表示;
2.掌握String,StringBuffer類的使用;
3.掌握“+”運(yùn)算符在進(jìn)行字符串操作時(shí)的內(nèi)在原理;
4.了解Java.lang 包中的:System,Runtime,Math,Process等的含義;
5.掌握J(rèn)ava基本數(shù)據(jù)類型的封裝類的使用;
6.能夠簡(jiǎn)單應(yīng)用Java集合框架。
第六章 Java Applet
[學(xué)時(shí)分配] 3(講課)+2(課堂實(shí)踐)=5課時(shí)
[主要內(nèi)容]
1.Applet簡(jiǎn)介(編寫一個(gè)Applet、裝入Applet、Appet 生命周期與主要方法、Applet和Application);
2.Applet標(biāo)記(包括舊版標(biāo)記和新版標(biāo)記);
3.AppletViewer ;
4.簡(jiǎn)單應(yīng)用 ;
5.Java對(duì)多媒體的支持 ;
6.Applet的通信;
7.Applet的AWT繪制。
[教學(xué)重點(diǎn)]
1. Applet的創(chuàng)建和運(yùn)行方法,Applet的組件繪制方法;
2. Applet的通信機(jī)制;
3. Applet和Application。
[教學(xué)難點(diǎn)]
1. Applet的創(chuàng)建和運(yùn)行方法;
2. Applet的通信機(jī)制。
[教學(xué)要求]
1.理解什么是Applet ;
2.掌握Applet的創(chuàng)建和運(yùn)行方法,Applet的組件繪制方法;
3.理解Applet的通信機(jī)制。
第七章 圖形用戶界面編程
[學(xué)時(shí)分配] 8(講課)+4(課堂實(shí)踐)=12課時(shí)
[主要內(nèi)容]
1. Java圖形界面概述;
2. Java.awt包;
3. 容器與組件;
4. 常用容器和布局管理器;
5. AWT事件模型 ;
6. 事件處理模型;
7. 事件對(duì)象和事件處理器;
8. AWT繪圖;
9. 常用GUI標(biāo)準(zhǔn)組件;
10. 鼠標(biāo)和鍵盤事件;
11. 菜單的使用;
12. 對(duì)話框的使用。
[教學(xué)重點(diǎn)]
1. 組件,容器,布局等概念;
2. AWT事件處理機(jī)制;
3. AWT繪圖;
4.鼠標(biāo)和鍵盤事件、菜單的使用。
[教學(xué)難點(diǎn)]
1. AWT事件處理機(jī)制。
[教學(xué)要求]
1.理解組件,容器,布局等概念;
2.掌握 AWT事件處理機(jī)制,并且能夠熟練應(yīng)用;
3.掌握在圖形界面中的繪圖方法;
4.理解swing組件模型。
第八章 異常處理
[學(xué)時(shí)分配] 2(講課)+2(課堂實(shí)踐)=4課時(shí)
[主要內(nèi)容]
1. 什么是Java的異常;
2. 異常類的劃分;
3. Java 的異常處理機(jī)制;
4. 異常的處理。
[教學(xué)重點(diǎn)]
1. 什么是Java的異常;
2. Java 的異常處理機(jī)制;
3. 異常的處理。
[教學(xué)難點(diǎn)]
1. Java 的異常處理機(jī)制;
2. 異常的處理。
[教學(xué)要求]
1. 掌握什么是Java的異常;
2. 掌握J(rèn)ava的異常處理機(jī)制;
3. 能夠處理Java中的異常。
第九章 流式輸入/輸出與文件處理
[學(xué)時(shí)分配] 7(講課)+4(課堂實(shí)踐)=11課時(shí)
[主要內(nèi)容]
1.I/O流的劃分(包括基本的流類)
2.字節(jié)流處理
1)標(biāo)準(zhǔn)輸入/出流System.in/out
2)文件類File
3)文件的順序處理
4)隨機(jī)存取文件
5)過濾流
3.字符流處理
1)Reader,Writer
2)字節(jié)流和字符流的轉(zhuǎn)化(InputStreamReader,OutputStream- Writer)
3)文件字符流(FileReader,F(xiàn)ileWriter)
4)從標(biāo)準(zhǔn)控制臺(tái)讀入特定類型的數(shù)據(jù)
5)其它字符流
4.串行化
[教學(xué)重點(diǎn)]
1. 流的概念和劃分;
2. 字符流處理的方法,字符流和字節(jié)流之間的轉(zhuǎn)換;
3. 文件描述,順序處理,隨機(jī)訪問處理的方法。
[教學(xué)難點(diǎn)]
1. 流的概念;
2. 字符流處理的方法,字符流和字節(jié)流之間的轉(zhuǎn)換。
[教學(xué)要求]
1.理解流的概念和劃分;
2.掌握文件描述,順序處理,隨機(jī)訪問處理的方法;
3.能夠熟練的使用過濾流;
4.掌握字符流處理的方法,字符流和字節(jié)流之間的轉(zhuǎn)換;
5.理解對(duì)象串行化的概念和方法。
第十章 多線程
[學(xué)時(shí)分配] 6(講課)+4(課堂實(shí)踐)=10課時(shí)
[主要內(nèi)容]
1.線程概念
2.線程的創(chuàng)建(包括線程體的構(gòu)造)
3.線程的狀態(tài)和基本控制(包括優(yōu)先級(jí))
4.多線程的互斥與同步
1)臨界資源和互斥鎖(Synchronized)
2)多線程的同步(wait和notify)
[教學(xué)重點(diǎn)]
1. 線程的概念;
2. 線程的構(gòu)造,調(diào)度,控制方法;
3. 多線程的互斥與同步。
[教學(xué)難點(diǎn)]
1. 線程的概念;
2. 線程的創(chuàng)建(包括線程體的構(gòu)造)。
[教學(xué)要求]
1.理解線程的概念;
2.掌握線程的構(gòu)造,調(diào)度,控制方法;
3.能夠處理簡(jiǎn)單的多線程互斥和同步。
第十一章 JDBC技術(shù)與數(shù)據(jù)庫應(yīng)用
[學(xué)時(shí)分配] 2(講課)+3(課堂實(shí)踐)=5課時(shí)
[主要內(nèi)容]
1.JDBC概述
1)特點(diǎn)
2)結(jié)構(gòu)和應(yīng)用模型
2.通過JDBC訪問數(shù)據(jù)庫
1)JDBC驅(qū)動(dòng)程序的類型
2)連接數(shù)據(jù)庫
3)查詢數(shù)據(jù)庫和檢索結(jié)果集
4)更新數(shù)據(jù)庫
5)使用輸入和輸出參數(shù)
[教學(xué)重點(diǎn)]
1. JDBC的特點(diǎn),結(jié)構(gòu),應(yīng)用模型;
2. 通過JDBC訪問數(shù)據(jù)庫執(zhí)行SQL 語句的方法;
3. JDBC驅(qū)動(dòng)程序的類型。
[教學(xué)難點(diǎn)]
1. 通過JDBC訪問數(shù)據(jù)庫執(zhí)行SQL 語句的方法。
[教學(xué)要求]
1.理解JDBC的特點(diǎn),結(jié)構(gòu),應(yīng)用模型;
2.掌握通過JDBC訪問數(shù)據(jù)庫執(zhí)行SQL 語句的方法:連接,查詢,檢索,更新,使用參數(shù);
3.理解JDBC驅(qū)動(dòng)程序的類型。
第十二章 Java的網(wǎng)絡(luò)編程
[學(xué)時(shí)分配] 3(講課)+3(課堂實(shí)踐)=6課時(shí)
[主要內(nèi)容]
1.URL概述
1)URL和URL類
2)URLConnection
2.Socket通信
1)創(chuàng)建Socket通信的方法
2)一個(gè)單客戶Socket通信程序
3)多客戶Socket通信程序
3.?dāng)?shù)據(jù)報(bào)通信
1)創(chuàng)建數(shù)據(jù)報(bào)通信程序的方式
2)一個(gè)簡(jiǎn)單的數(shù)據(jù)報(bào)通信程序
[教學(xué)重點(diǎn)]
1. URL的概念;
2. 創(chuàng)建Socket通信的方法;
3. 創(chuàng)建數(shù)據(jù)報(bào)通信程序的方式。
[教學(xué)難點(diǎn)]
1. Java數(shù)據(jù)庫編程中常見錯(cuò)誤的改正方法;
2. 創(chuàng)建Socket通信的方法。
[教學(xué)要求]
1.理解URL的概念;
2.掌握創(chuàng)建簡(jiǎn)單 Socket 通信的方法;
3.掌握創(chuàng)建簡(jiǎn)單數(shù)據(jù)報(bào)通信程序的方法。
第十三章 Swing編程
[學(xué)時(shí)分配] 2(講課)+2(課堂實(shí)踐)=4課時(shí)
[主要內(nèi)容]
1.Swing包簡(jiǎn)介
2.Swing包中典型部件的使用
1)JFrame類
2)Swing中按鈕和標(biāo)簽
3)流動(dòng)窗格
4)工具欄
5)Swing中的對(duì)話框
6)選項(xiàng)卡(JTabbedPane)
[教學(xué)重點(diǎn)]
1. JFrame類;
2. Swing中按鈕和標(biāo)簽;
3. 工具欄;
4.Swing中的對(duì)話框;
5.選項(xiàng)卡。
[教學(xué)難點(diǎn)]
1. Swing中的對(duì)話框、選項(xiàng)卡。
[教學(xué)要求]
1.了解Swing的由來;
2.掌握Swing包中典型部件的使用。
三、課程實(shí)踐環(huán)節(jié)基本要求
[案例項(xiàng)目實(shí)踐一]
1.項(xiàng)目實(shí)踐題目:熟悉Java程序開發(fā)環(huán)境;
2.項(xiàng)目實(shí)踐目的和要求。
目的:熟悉J2sdk集成環(huán)境的基本命令、功能和基本用法。并學(xué)會(huì)配置path 等環(huán)境變量。
要求:熟練掌握使用J2SDK環(huán)境進(jìn)Java程序開發(fā)的全過程(包括:源程序的編輯、編譯、調(diào)試、運(yùn)行和結(jié)果查看)。
3.項(xiàng)目實(shí)踐基本內(nèi)容:
安裝Jdk1.5.0集成環(huán)境,安裝成功后,配置path,classpath路徑,讓用戶在任何目錄下均可用到Java的系統(tǒng)資源。
設(shè)置環(huán)境變量PATH和CLASSPATH(如果在autoexec.bat中沒有進(jìn)行設(shè)
置)。進(jìn)入命令行(MS-DOS)方式,進(jìn)行如下設(shè)置:
1)SET PATH=D:\JDK1.5.0\BIN;%PATH%
2)SET CLASSPATH=.; %CLASSPATH%
3)安裝 Jdk 1.5.0 Doc, 并查看Jdk 1.5.0 Doc 文檔中,和課堂教學(xué)有
關(guān)系的部分。在整個(gè)實(shí)驗(yàn)過程中都可以參考。
4)建立自己的工作目錄如d:\user。以后的Java程序和過程文件均放置在
此目錄下。
5)輸入一個(gè)Application源程序,學(xué)習(xí)編輯、編譯、運(yùn)行程序的方法。
4.完成方式:課堂講解+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐二]
1.項(xiàng)目實(shí)踐題目: 簡(jiǎn)單數(shù)據(jù)類型和流程控制。
2.項(xiàng)目實(shí)踐目的和要求
目的:掌握J(rèn)ava語言的標(biāo)識(shí)符和保留字,各簡(jiǎn)單數(shù)據(jù)類型變量以及有邏輯量
意義數(shù)據(jù)的表示方法以及表示條件的表達(dá)式的類型;熟練掌握while、do-while和for三種語句組成循環(huán)結(jié)構(gòu)的基本方法。。
要求:把課堂上學(xué)到的理論用于實(shí)踐,并驗(yàn)證理論的正確性,和發(fā)現(xiàn)新的問題。
3.項(xiàng)目實(shí)踐基本內(nèi)容
掌握標(biāo)識(shí)符的定義規(guī)則、表達(dá)式的組成、各種數(shù)據(jù)類型及其使用方法、各種運(yùn)算符的使用及其優(yōu)先級(jí)控制。
掌握分支結(jié)構(gòu),循環(huán)結(jié)構(gòu),continue,break,語句標(biāo)號(hào)等內(nèi)容。
3. 完成方式:課堂講解+課堂練習(xí)+課后作業(yè)+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐三]
1.項(xiàng)目實(shí)踐題目: 類、對(duì)象基礎(chǔ)知識(shí)的應(yīng)用。
2.項(xiàng)目實(shí)踐目的和要求。
目的:理解面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。
要求:掌握類、對(duì)象、成員、方法、構(gòu)造方法、封裝性,多態(tài)性的概念 。
3.項(xiàng)目實(shí)踐基本內(nèi)容
定義一個(gè)類實(shí)現(xiàn)銀行帳戶的概念,包括的變量有"帳號(hào)"和"存款余額",包括的方法有"存款"、"取款"、"查詢余額"和”顯示帳號(hào)”,。定義主類,創(chuàng)建帳戶類的對(duì)象,并完成相應(yīng)操作。
4.完成方式:課堂講解+課堂練習(xí)+課后作業(yè)+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐四]
1.項(xiàng)目實(shí)踐題目: 抽象類、接口與包的使用。
2.項(xiàng)目實(shí)踐目的和要求。
目的:理解面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。
要求:掌握抽象類、接口、包package、遞歸的概念。
3.項(xiàng)目實(shí)踐基本內(nèi)容
編寫求解幾何圖形(如三角形,矩型,圓,多邊型)的周長(zhǎng)、面積的應(yīng)
用程序,要求用到繼承、多態(tài)、抽象類、接口、內(nèi)部類等面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)的特點(diǎn)。
要求三角形,矩型,圓,多邊型的類放到不同的包中,用包的技術(shù)組織
程序的設(shè)計(jì)。同時(shí)要求程序能從鍵盤上接受數(shù)據(jù)以便求解不同的幾何圖形的周長(zhǎng)面積。提示:從鍵盤上輸入雙精度數(shù)的一種方法(程序片段) 。
4.完成方式:課堂講解+課堂練習(xí)+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐五]
1.項(xiàng)目實(shí)踐題目: 字符串處理及基礎(chǔ)類庫的應(yīng)用
2.項(xiàng)目實(shí)踐目的和要求。
目的:掌握字符串處理的方法及基礎(chǔ)類庫應(yīng)用。
要求:掌握String類、StringBuffer類、字符串與其他數(shù)據(jù)類型的轉(zhuǎn)換及Math類的使用。
3.項(xiàng)目實(shí)踐基本內(nèi)容
使用Java Aplication的命令行參數(shù)讀入兩個(gè)數(shù)據(jù),計(jì)算它們的和,然后將和輸出。如果參數(shù)的數(shù)目不足,顯示相應(yīng)提示信息并退出程序的執(zhí)行。
4.完成方式:課堂講解+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐六]
1.項(xiàng)目實(shí)踐題目: 異常處理的應(yīng)用
2.項(xiàng)目實(shí)踐目的和要求
目的:理解什么是例外。
要求:掌握java的例外處理機(jī)制和方法。
3.項(xiàng)目實(shí)踐基本內(nèi)容
使用Java Aplication的命令行參數(shù)讀入兩個(gè)數(shù)據(jù),計(jì)算它們的和,然后將和輸出。
編程自定義例外OnlyOneException與NoOprandException。如果參數(shù)的數(shù)目不足,顯示相應(yīng)提示信息并退出程序的執(zhí)行。
4.完成方式:課堂講解+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐七]
1.項(xiàng)目實(shí)踐題目: 流式輸入輸出處理。
2.項(xiàng)目實(shí)踐目的和要求
目的:理解流的概念,流的劃分。
要求:掌握文件描述,順序處理,隨機(jī)訪問處理的方法及字符流處理的方法。
3.項(xiàng)目實(shí)踐基本內(nèi)容
定義一個(gè)類實(shí)現(xiàn)銀行帳戶的概念,包括的變量有"帳號(hào)"和"存款余額",包括的方法有"存款"、"取款"、"查詢余額"、”顯示帳號(hào)”以及存儲(chǔ)功能。
定義主類,創(chuàng)建帳戶類的對(duì)象,并完成相應(yīng)操作,要求能存儲(chǔ)儲(chǔ)戶歷史信息。
編寫程序,能接收鍵盤輸入的字符串,并將字符串的內(nèi)容寫入文件。
4. 完成方式:課堂講解+課堂練習(xí)+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐八]
1.項(xiàng)目實(shí)踐題目: 線程的應(yīng)用。
2.項(xiàng)目實(shí)踐目的和要求
目的:理解線程的概念、線程的生命周期。
要求:掌握使用多線程機(jī)制。
3.項(xiàng)目實(shí)踐基本內(nèi)容
利用多線程編程實(shí)現(xiàn)一個(gè)正在旋轉(zhuǎn)的地球。
將插入、冒泡排序算法設(shè)計(jì)成算法,啟動(dòng)兩個(gè)以上不同的線程同時(shí)運(yùn)行,計(jì)算不同排序的運(yùn)行時(shí)間。
4.完成方式:課堂講解+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐九]
1.項(xiàng)目實(shí)踐題目: 用戶圖形界面GUI標(biāo)準(zhǔn)組件及事件處理。
2.項(xiàng)目實(shí)踐目的和要求
目的:掌握常用GUI控制組件的使用方法。
要求:掌握事件處理的方法。
3.項(xiàng)目實(shí)踐基本內(nèi)容
編程包含一個(gè)標(biāo)簽和一個(gè)按鈕,單擊按鈕時(shí),標(biāo)簽的內(nèi)容在"你好"和"
再見"之間切換。
編程包含一個(gè)文本框和一個(gè)文本區(qū)域,文本框內(nèi)容改變時(shí),將文本框中
的內(nèi)容顯示在文本區(qū)域中;在文本框中按回車鍵時(shí),清空文本區(qū)域的內(nèi)容。
編程包含一個(gè)復(fù)選按鈕和一個(gè)普通按鈕,復(fù)選按鈕選中時(shí),普通按鈕的
背景色為青色,未選中時(shí)為灰色。
編程包含一個(gè)單選按鈕組和一個(gè)普通按鈕,單選按鈕組中包含三個(gè)單選,
文本說明分別為"普通"、"黑體"和"斜體"。選擇文本標(biāo)簽為"普通"的單選按鈕時(shí),普通按鈕中的文字為普通字體,選擇文本標(biāo)簽為"黑體"的單選按鈕時(shí),普通按鈕中的文字的字體為黑體,選擇文本標(biāo)簽為"斜體"的單選按鈕時(shí),普通按鈕中的文字的字體為斜體。
編程包含一個(gè)下拉列表和一個(gè)按鈕,下拉列表中有10、14、18三個(gè)選項(xiàng)。
選擇10時(shí),按鈕中文字的字號(hào)為10,選擇14時(shí),按鈕中文字的字號(hào)為14,選擇18時(shí),按鈕中文字的字號(hào)為18。
編程包含一個(gè)列表和兩個(gè)標(biāo)簽,在第一個(gè)標(biāo)簽中顯示列表中被雙擊的選
項(xiàng)的內(nèi)容,在第二個(gè)標(biāo)簽中顯示列表中被選中的所有選項(xiàng)的內(nèi)容。
編程確定當(dāng)前鼠標(biāo)的位置坐標(biāo)。
編程創(chuàng)建一個(gè)Frame,實(shí)現(xiàn)窗口的**接口。
編程使用BorderLayout布局方式放置5個(gè)按鈕。
4.完成方式:課堂講解+課堂練習(xí)+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐十]
1.項(xiàng)目實(shí)踐題目: Applet的編寫。
2.項(xiàng)目實(shí)踐目的和要求
目的:掌握J(rèn)ava Applet程序結(jié)構(gòu)和開發(fā)過程。
要求:學(xué)會(huì)編寫Applet對(duì)應(yīng)的HTML文件,掌握從HTML文件向Applet傳遞參數(shù)的方法。
3.項(xiàng)目實(shí)踐基本內(nèi)容
輸入一個(gè)applet源程序,學(xué)習(xí)編輯、編譯、運(yùn)行程序的方法。
寫Applet,從HTML文件中獲取兩個(gè)字符串參數(shù),并將它們?cè)跒g覽器中鼠標(biāo)單擊的位置顯示出來。
寫Applet,顯示heep://www.baidu.com的頁面內(nèi)容。
寫Applet,包含一個(gè)文本框和一個(gè)按鈕,單擊按鈕時(shí),在瀏覽器的狀態(tài)
行顯示文本框中的內(nèi)容。
寫Applet,繪制直線、各種矩形、多邊形、圓和橢圓等圖形。
寫Applet,顯示不同大小不同風(fēng)格、類型的字體。
寫Applet,顯示一排用隨機(jī)定義的顏色所填充的小方塊。
寫Applet,在瀏覽器中顯示圖片文件,包括原圖、縮小一半圖、寬扁圖和瘦高圖。
4.完成方式:課堂講解+課堂練習(xí)+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐十一]
1.項(xiàng)目實(shí)踐題目: Java網(wǎng)絡(luò)編程技術(shù)。
2.項(xiàng)目實(shí)踐目的和要求
目的:掌握URL的概念和編程。
要求:掌握TCP與UDP編程。
3.項(xiàng)目實(shí)踐基本內(nèi)容
使用InetAddress類的方法獲取http://www.ytu.edu.cn/的主機(jī)的IP
地址;獲取本地機(jī)的名稱和IP地址。
使用Socket編程,客戶機(jī)發(fā)送數(shù)據(jù)到服務(wù)器,服務(wù)器將接收到的數(shù)據(jù)返
回給客戶機(jī)。
將上面的程序進(jìn)行改寫,使用多線程實(shí)現(xiàn)服務(wù)器能同時(shí)處理多個(gè)客戶機(jī)
的請(qǐng)求。
使用UDP編程,客戶機(jī)發(fā)送數(shù)據(jù)到服務(wù)器,服務(wù)器將接收到的數(shù)據(jù)返回
給客戶機(jī)。
4.完成方式:課堂講解+課后項(xiàng)目實(shí)踐。
[案例項(xiàng)目實(shí)踐十二]
1.項(xiàng)目實(shí)踐題目: 綜合設(shè)計(jì)實(shí)驗(yàn)。
2.項(xiàng)目實(shí)踐目的和要求
目的:為了進(jìn)一步鞏固課堂上所學(xué)到的知識(shí),深刻把握J(rèn)ava技術(shù)的重要概念及其面向?qū)ο蟮奶匦裕憻拰W(xué)生熟練的應(yīng)用面向?qū)ο蟮乃枷牒驮O(shè)計(jì)方法解決實(shí)際問題的能力,特開設(shè)綜合設(shè)計(jì)實(shí)驗(yàn)實(shí)驗(yàn)項(xiàng)目。
要求:掌握J(rèn)ava的語言規(guī)范,面向?qū)ο蟮暮诵母拍詈吞匦裕籎ava的編程技術(shù),包括異常處理,圖形界面設(shè)計(jì),多線程,網(wǎng)絡(luò)通信程序、Applet等;Java應(yīng)用軟件的開發(fā)環(huán)境和開發(fā)過程;面向?qū)ο蟮乃枷牒统绦蛟O(shè)計(jì)方法。
3.項(xiàng)目實(shí)踐基本內(nèi)容
拼圖游戲是一個(gè)簡(jiǎn)單的Java小程序(Applet),它的游戲規(guī)則如下:將一
張大圖打散成9張小圖,然后在游戲里任意挑8張圖,貼在3行3列的矩陣中的任意位置。通過鼠標(biāo)或鍵盤的方向鍵移動(dòng)打亂的8張圖片,讓其復(fù)原成原來的順序,玩家就勝利了,游戲就結(jié)束了。在游戲結(jié)束之后,會(huì)算出玩家的得分。
4.完成方式:課堂講解+課后項(xiàng)目實(shí)踐。
四、幾點(diǎn)說明
1、制定本大綱的依據(jù)
本大綱依據(jù)高等工科院校四年本科計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的培養(yǎng)目標(biāo)和畢業(yè)生基本要求以及培養(yǎng)計(jì)劃而定。
2、本課程與前后課程的聯(lián)系
前修課程:《高級(jí)語言程序設(shè)計(jì)》、《數(shù)據(jù)結(jié)構(gòu)》
后續(xù)課程:《Java Web技術(shù)》
3、考核方法和成績(jī)?cè)u(píng)定說明
(1)考核方式:閉卷
(2)出題方式:A、B卷
(3)時(shí)數(shù): 2小時(shí)
(4)成績(jī)?cè)u(píng)定:平時(shí)成績(jī)(20%)上機(jī)實(shí)踐(20%)期末(60%)
4、必要的教學(xué)手段說明
課堂講授以PPT課件為主。
5、參考教材與文獻(xiàn)
[1] 《Java 面向?qū)ο蟪绦蛟O(shè)計(jì)(第二版)》 (美)劉易斯等著 張琛恩等譯電子工業(yè)出版社 2005
[2] 《Java程序設(shè)計(jì)教程》 H.M. Deitel著 清華大學(xué)出版社 2004
[3].《Java編程思想》 Bruce Eckel 著 陳昊等譯 機(jī)械工業(yè)出版
[4]. 《Java2 核心技術(shù)第6版:基礎(chǔ)知識(shí)》 (美)Cay S.Horstmann,Gary Cornell編 機(jī)械工業(yè)出版社 2003
[5].《Java語言實(shí)用教程》(第一版) 丁振凡 北京郵電大學(xué)出版社 2005
五、學(xué)時(shí)分配
序號(hào) | 課程內(nèi)容 | 學(xué)時(shí) | 學(xué)時(shí)分配 | ||||
講授 | 討論 | 習(xí)題 | 實(shí)驗(yàn) | 其他 | |||
一 | Java語言概述 | 3 | 2 | 1 | |||
二 | Java語言基礎(chǔ) | 7 | 3 | 1 | 1 | 2 | |
三 | 類與對(duì)象 | 9 | 4 | 1 | 1 | 3 | |
四 | 繼承、多態(tài)和接口 | 10 | 5 | 1 | 4 | ||
五 | 掌握系統(tǒng)類 | 4 | 2 | 2 | |||
六 | Java Applet | 5 | 3 | 2 | |||
七 | 圖形用戶界面編程 | 12 | 6 | 2 | 4 | ||
八 | 異常處理 | 4 | 2 | 2 | |||
九 | 流式輸入/輸出與文件處理 | 11 | 5 | 2 | 4 | ||
十 | 多線程 | 10 | 5 | 1 | 4 | ||
十一 | JDBC技術(shù)與數(shù)據(jù)庫應(yīng)用 | 5 | 2 | 3 | |||
十二 | Java的網(wǎng)絡(luò)編程 | 6 | 3 | 3 | |||
十三 | Swing 編程 | 4 | 2 | 2 | |||
總學(xué)時(shí) | 90 | 44 | 2 | 8 | 36 |