暫無(wú)課程簡(jiǎn)介!
《Java程序設(shè)計(jì)》課程教學(xué)大綱
一、課程基本信息
課程代碼: |
| ||
課程名稱: | Java程序設(shè)計(jì) | ||
英文名稱: | |||
課程類別: | 專業(yè)基礎(chǔ)課 | ||
學(xué) 時(shí): | 68 | 實(shí)驗(yàn)學(xué)時(shí) | 20 |
學(xué) 分: | 4 | ||
適用對(duì)象: | 軟件工程專業(yè)本科生 | ||
考核方式: | 考試 | ||
先修課程: | C語(yǔ)言、計(jì)算機(jī)基礎(chǔ) |
二、課程簡(jiǎn)介
面向?qū)ο缶幊碳夹g(shù)根據(jù)人類認(rèn)識(shí)事物采用的思維方式來(lái)真實(shí)地模擬客觀世界,并且把數(shù)據(jù)與操作封裝在類中符合大規(guī)模軟件開(kāi)發(fā)的要求。1995年,由Sun公司推出的Java語(yǔ)言是純面向?qū)ο缶幊陶Z(yǔ)言。該語(yǔ)言簡(jiǎn)單高效、安全性強(qiáng)、可移植性好、支持多線程以及平臺(tái)無(wú)關(guān)性等特征成為Internet上最受歡迎的軟件開(kāi)發(fā)語(yǔ)言,該語(yǔ)言也為移動(dòng)互聯(lián)和智能電子等領(lǐng)域提供軟件開(kāi)發(fā)服務(wù)。根據(jù)TIOBE開(kāi)發(fā)語(yǔ)言排行榜統(tǒng)計(jì),目前有約20%的開(kāi)發(fā)人員使用Java語(yǔ)言。
本課程介紹了Java的面向?qū)ο缶幊碳夹g(shù)和多種實(shí)用開(kāi)發(fā)方法,旨在培養(yǎng)利用Java程序設(shè)計(jì)技術(shù)解決實(shí)際問(wèn)題的能力,主要內(nèi)容包括Java概述及系統(tǒng)環(huán)境搭建、Java語(yǔ)言基礎(chǔ)、Java程序流程控制、數(shù)組與方法、面向?qū)ο笤O(shè)計(jì)(基礎(chǔ)篇)、面向?qū)ο笤O(shè)計(jì)(高級(jí)篇)、異常處理、包及訪問(wèn)控制權(quán)限、泛型、常用實(shí)用類、輸入輸出、Java類集、反射機(jī)制、多線程、圖形用戶界面、Java數(shù)據(jù)庫(kù)編程、Java網(wǎng)絡(luò)編程等知識(shí)點(diǎn),其中面向?qū)ο笤O(shè)計(jì)、泛型、類集、多線程和反射機(jī)制是重點(diǎn)內(nèi)容。為學(xué)習(xí)Java Web編程等課程打下基礎(chǔ)。
三、教學(xué)目標(biāo)
通過(guò)本課程的學(xué)習(xí),使學(xué)生在知識(shí)、能力和素質(zhì)等三方面達(dá)到如下要求:
知識(shí)教學(xué)目標(biāo): |
|
理解和掌握J(rèn)ava語(yǔ)言面向?qū)ο笤O(shè)計(jì)方法、異常捕獲及處理、泛型、Java類集、Java IO、多線程編程、Java常用類庫(kù),了解Java數(shù)據(jù)庫(kù)編程、圖形界面、Java網(wǎng)絡(luò)編程和Java的反射機(jī)制。 | |
能力教學(xué)目標(biāo): |
|
利用對(duì)象分析方法學(xué)對(duì)客觀世界進(jìn)行簡(jiǎn)單的對(duì)象分析,并能夠使用Eclipse等開(kāi)發(fā)工具進(jìn)行簡(jiǎn)單的面向?qū)ο筌浖_(kāi)發(fā)。 | |
素質(zhì)教學(xué)目標(biāo): |
|
培養(yǎng)學(xué)生團(tuán)隊(duì)合作精神、交流溝通能力 |
四、教學(xué)基本內(nèi)容及重點(diǎn)與難點(diǎn)
序號(hào) | 章節(jié) | 分類 | 內(nèi)容 |
1 | JAVA語(yǔ)言概述 | 知識(shí)點(diǎn) | (1)Java 特點(diǎn);(2)Java運(yùn)行機(jī)制;(3) JDK 開(kāi)發(fā)環(huán)境配置;(4)Eclipse的安裝與使用;(5)運(yùn)行第一個(gè)Java程序;(5)Java的命名規(guī)范 |
重點(diǎn) | Java的運(yùn)行機(jī)制、運(yùn)行第一個(gè)Java程序、Java命名規(guī)范 | ||
難點(diǎn) | Java的運(yùn)行機(jī)制 | ||
2 | JAVA語(yǔ)法基礎(chǔ) | 知識(shí)點(diǎn) | (1)Java程序的基本構(gòu)成;(2)Java程序注釋方法;(3)Java可以使用的符號(hào);(4)基本數(shù)據(jù)類型;(5)定義變量和聲明常量的方法;(6)理解各種運(yùn)算符的含義。 |
重點(diǎn) | Java程序的基本構(gòu)成、注釋方法、基本數(shù)據(jù)類型轉(zhuǎn)換、表達(dá)式 | ||
難點(diǎn) | 基本數(shù)據(jù)類型轉(zhuǎn)換、關(guān)系表達(dá)式 |
序號(hào) | 章節(jié) | 分類 | 內(nèi)容 |
3 | Java程序流程控制 | 知識(shí)點(diǎn) | (1)if語(yǔ)句、switch語(yǔ)句和條件運(yùn)算符;(2)while語(yǔ)句、do-while語(yǔ)句和for語(yǔ)句;(3)break和continue語(yǔ)句 |
重點(diǎn) | switch、while語(yǔ)句 | ||
難點(diǎn) | switch語(yǔ)句、for語(yǔ)句 | ||
4 | 數(shù)組與方法 | 知識(shí)點(diǎn) | ?(1)數(shù)組的定義以及使用方法;(2)方法的定義及調(diào)用方法;(3)方法重載;(4)System類中的一些方法 |
重點(diǎn) | 二維數(shù)組的定義與使用、方法的重載 | ||
難點(diǎn) | 方法的重載 | ||
5 | 面向?qū)ο笤O(shè)計(jì)(基礎(chǔ)篇) | 知識(shí)點(diǎn) | (1)對(duì)象的封裝、繼承和多態(tài)等三大特性;(2)類的定義和使用;(3)對(duì)象的創(chuàng)建和使用;(4)成員方法與成員變量的定義和使用;(5)構(gòu)造方法的定義格式、調(diào)用時(shí)機(jī)、構(gòu)造方法的重載;(6)匿名對(duì)象的定義和使用;(7)this關(guān)鍵字的作用和使用方法;(8)static關(guān)鍵的作用和使用方法;(9)對(duì)象數(shù)組的定義和使用方法;(10)String類和StringBuffer類的常用方法 |
重點(diǎn) | 類的定義和使用、對(duì)象的創(chuàng)建和使用、構(gòu)造方法的定義、static關(guān)鍵的作用 | ||
難點(diǎn) | 構(gòu)造方法的定義、static關(guān)鍵的作用 | ||
6 | 面向?qū)ο笤O(shè)計(jì)(高級(jí)篇) | 知識(shí)點(diǎn) | (1)繼承的實(shí)現(xiàn)方法;(2)方法覆寫(xiě)和屬性覆蓋的概念和實(shí)現(xiàn)方法;(3)super關(guān)鍵字的作用;(4)抽象類和接口的基本概念和實(shí)現(xiàn)方法;(5)對(duì)象多態(tài)性的作用和實(shí)際應(yīng)用方法;(6)final和instanceof關(guān)鍵字的使用方法;(7)Object類的作用及主要使用方法 |
重點(diǎn) | 繼承、抽象類和接口、對(duì)象多態(tài)性 | ||
難點(diǎn) | 對(duì)象多態(tài)性 | ||
7 | 異常處理 | 知識(shí)點(diǎn) | (1)異常的概念和異常產(chǎn)生的原因;(2)異常處理機(jī)制;(3)異常處理方法;(4)Exception和RuntimeException異常的區(qū)別 |
重點(diǎn) | 異常處理方法 | ||
難點(diǎn) | Exception和RuntimeException異常的區(qū)別 | ||
8 | 包及訪問(wèn)控制權(quán)限 | 知識(shí)點(diǎn) | (1)包的定義及使用;(2)Java的4種訪問(wèn)權(quán)限控制符的作用及使用 |
重點(diǎn) | 包的使用、4種訪問(wèn)權(quán)限控制符的作用 | ||
難點(diǎn) | 4種訪問(wèn)權(quán)限控制符的作用 | ||
9 |
| 知識(shí)點(diǎn) | (1)泛型類的使用方法;(2)泛型接口的使用方法;(3)泛型方法與泛型數(shù)組 |
重點(diǎn) | 泛型類的使用方法、泛型接口的使用方法 | ||
難點(diǎn) | 泛型類的使用方法 | ||
10 | 常用實(shí)用類 | 知識(shí)點(diǎn) | (1)包裝類的作用以及自動(dòng)裝箱和拆箱操作;(2)Runtime類;(3)System類取得系統(tǒng)屬性信息;(4)日期類的常用操作,能夠利用多種方法格式化日期;(5)Math類、Random類、BigInteger類和BigDecimal類;(6)數(shù)字格式化類NumberFormat的使用方法;(6)對(duì)象克隆技術(shù);(7)Arrays類的常用方法;(8)Comparable接口和Comparator接口進(jìn)行對(duì)象比較的方法;(9)正則表達(dá)式對(duì)字符串的組成進(jìn)行分析 |
重點(diǎn) | 日期類、數(shù)字格式化類NumberFormat)、Comparable接口和Comparator接口、正則表達(dá)式 | ||
難點(diǎn) | Comparable接口和Comparator接口、正則表達(dá)式 | ||
11 | Java 的I/O系統(tǒng) | 知識(shí)點(diǎn) | (1)File類對(duì)文件操作的主要方法;(2)輸入工具類Scanner的操作方法;(3)System類支持IO的System.out和System.in ;(4)數(shù)據(jù)操作流DataOutputStream和DataInputStream類;(4)對(duì)象序列化的作用以及對(duì)象序列化的實(shí)現(xiàn)技術(shù)。 |
重點(diǎn) | File類、數(shù)據(jù)操作流DataOutputStream和DataInputStream類、對(duì)象序列化 | ||
難點(diǎn) | 數(shù)據(jù)操作流DataOutputStream和DataInputStream類、對(duì)象序列化 | ||
12 | Java集合 | 知識(shí)點(diǎn) | (1)接口Collection的作用及主要成員方法;(2)Collection子接口List接口和Set接口的區(qū)別及常用子類的使用方法;(3)SortedSet接口及子類的使用方法;(4)Map接口與Collection接口的區(qū)別以及Map接口子類的使用方法;(5)Iterator接口進(jìn)行集合輸出方法;(6)屬性類Properties |
重點(diǎn) | List接口和Set接口、SortedSet接口、Map接口、Iterator接口 | ||
難點(diǎn) | Map接口、Iterator接口 | ||
13 | 線程處理 | 知識(shí)點(diǎn) | (1)Java多線程的兩種實(shí)現(xiàn)方式;(2)同步與死鎖;(3)生產(chǎn)者與消費(fèi)者程序案例。 |
重點(diǎn) | Java多線程的兩種實(shí)現(xiàn)方式 | ||
難點(diǎn) | 生產(chǎn)者與消費(fèi)者程序案例 | ||
14 | 圖形用戶界面 | 知識(shí)點(diǎn) | (1)JLabel、JButton、JTextField等常用組件的基本使用方法;(2)布局管理器組件FlowLayout、BorderLayout、GridLayout和CardLayout的使用方法;(3)常用容器組件JFrame、JPanel、JSplitPane和JTabbedPane等的使用方法;(4)窗體事件、動(dòng)作事件、鍵盤(pán)事件和鼠標(biāo)事件等常見(jiàn)事件的監(jiān)聽(tīng)模型與處理方法;(5)適配器處理事件模型;(6) JRadioButton、JCheckBox、和JMenu等組件的使用方法。 |
重點(diǎn) | 布局管理器組件FlowLayout、BorderLayout、窗體事件、動(dòng)作事件、鍵盤(pán)事件和鼠標(biāo)事件、JMenu組件 | ||
難點(diǎn) | 窗體事件、動(dòng)作事件、鍵盤(pán)事件和鼠標(biāo)事件 | ||
15 | Java數(shù)據(jù)庫(kù)操作 | 知識(shí)點(diǎn) | (1)MySQL數(shù)據(jù)庫(kù);(2)JDBC對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的插入、修改、刪除和更新操作;(3)Statement、ResultSet和PreparedStatement接口的使用方法 |
重點(diǎn) | JDBC對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的插入、修改、刪除和更新操作、Statement、ResultSet和PreparedStatement接口的使用方法 | ||
難點(diǎn) | JDBC對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的插入、修改、刪除和更新操作 |
五、學(xué)時(shí)分配表
序號(hào) | 章節(jié) | 講授 | 實(shí)驗(yàn) | 備注 |
JAVA語(yǔ)言概述 | 2 |
|
| |
2 | JAVA語(yǔ)法基礎(chǔ) | 2 |
|
|
3 | Java程序流程控制 | 4 |
|
|
4 | 數(shù)組與方法 | 4 |
|
|
5 | 面向?qū)ο笤O(shè)計(jì)(基礎(chǔ)篇) | 12 |
|
|
6 | 面向?qū)ο笤O(shè)計(jì)(高級(jí)篇) | 10 |
|
|
7 | 異常處理 | 2 |
|
|
8 | 包及訪問(wèn)控制權(quán)限 | 2 |
|
|
9 | 泛型 | 2 |
|
|
10 | 常用實(shí)用類 | 6 |
|
|
11 | Java 的I/O系統(tǒng) | 6 |
|
|
12 | Java集合 | 4 |
|
|
13 | 線程處理 | 2 |
|
|
14 | 圖形用戶界面 | 6 |
|
|
15 | Java數(shù)據(jù)庫(kù)操作 | 4 |
|
|
學(xué)時(shí)總計(jì) | 68 |
|
|
六、選用教材
覃遵躍,周清平,蔡國(guó)民,張彬連.利用案例輕松學(xué)習(xí)Java語(yǔ)言[M]. 北京:清華大學(xué)出版社,2013
七、主要參考書(shū)目
[1] 李興華.Java開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)典[M]. 北京:清華大學(xué)出版社 2009
[2] (美)Bruce Eckel,陳昊鵬譯.《Java編程思想》[M].北京:機(jī)械工業(yè)出版社 2009
[3] 印 旻等. JAVA語(yǔ)言與面向?qū)ο蟪绦蛟O(shè)計(jì)[M].北京:清華大學(xué)出版社 2000
[4] 孫一林等. JAVA語(yǔ)言高級(jí)教程[M].北京:清華大學(xué)出版社 2001
八、考核方式
1、考核方式:
本課程的考核方式為期末試卷測(cè)試和實(shí)踐技能測(cè)試。
2、成績(jī)?cè)u(píng)定:
成績(jī)?cè)u(píng)定采用百分制。
3、計(jì)分原則,主要由以下三個(gè)部分構(gòu)成:
第一部分:平時(shí)出勤10%;
第二部分:作業(yè)評(píng)定10%;
第三部分:期末閉卷考試50%。
第四部分:實(shí)踐技能測(cè)試30%
九、教學(xué)改革基本要求
1、采用案例教學(xué),增進(jìn)學(xué)生的學(xué)習(xí)積極性和形成對(duì)新概念的認(rèn)識(shí)。
2、采用問(wèn)題驅(qū)動(dòng)法,激發(fā)學(xué)生的學(xué)習(xí)主動(dòng)性和加深對(duì)一些概念的理解。
3、利用多媒體教學(xué)手段,教師現(xiàn)場(chǎng)編制和演示部分程序。
4、學(xué)生分組討論部分程序設(shè)計(jì)的方法,最后單獨(dú)完成。
5、利用網(wǎng)絡(luò)資源進(jìn)行教學(xué),積極建設(shè)網(wǎng)絡(luò)資源,調(diào)動(dòng)廣大學(xué)生參與,提高學(xué)生的積極性和創(chuàng)造性。
大綱執(zhí)筆人:《Java程序設(shè)計(jì)》教學(xué)團(tuán)隊(duì)
大綱審核人:軟件學(xué)院教學(xué)指導(dǎo)委員會(huì)
2012年8月