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