《Java程序設(shè)計(jì)基礎(chǔ)》課程教學(xué)大綱
一、 課程說明
課程編碼 | 4300110 | 課程類別 | 專業(yè)基礎(chǔ)課 | ||
修讀學(xué)期 | 3學(xué)期 | 學(xué) 分 | 4 | 學(xué) 時 | 64 |
課程英文名稱 | Java Programming Foundation | ||||
適用專業(yè) | 軟件工程 | ||||
先修課程 | C語言 |
二、課程的地位及作用
Java程序設(shè)計(jì)基礎(chǔ)是軟件工程專業(yè)的必修專業(yè)基礎(chǔ)課程之一。采用面向?qū)ο筌浖_發(fā)方法,集抽象性、封裝性、繼承性和多態(tài)性于一體,幫助人們開發(fā)出模塊化、數(shù)據(jù)抽象程度高的,體現(xiàn)信息隱蔽、可復(fù)用、易修改、易擴(kuò)充等特性的程序。通過本課程的教學(xué),使學(xué)生了解面向?qū)ο蟮幕靖拍?/span>;初步掌握利用面向?qū)ο蠹夹g(shù)對客觀世界建模的方法;能比較熟練地使用Java語言實(shí)現(xiàn)復(fù)雜度一般的面向?qū)ο蟮某绦蛟O(shè)計(jì);初步掌握面向?qū)ο缶幊汰h(huán)境的使用。
三、課程教學(xué)目標(biāo)
通過本課程的學(xué)習(xí)(包括線上觀看視頻、線上快題測試、線下課堂能力測試、課堂活動(討論、研討)、上機(jī)實(shí)驗(yàn)和作業(yè)),培養(yǎng)學(xué)生面向?qū)ο笤O(shè)計(jì)的思想,訓(xùn)練面向?qū)ο蟮乃季S,理解模塊化程序和數(shù)據(jù)抽象的概念,學(xué)會用對象的思維來思考問題、解決問題。要求學(xué)生達(dá)到如下要求:
1. 知識教學(xué)目標(biāo)
了解Java語言結(jié)構(gòu)化程序設(shè)計(jì)的基本知識,包括數(shù)據(jù)類型、常量變量和表達(dá)式、流程控制語句、數(shù)組與方法;理解掌握J(rèn)ava語言面向?qū)ο蟪绦蛟O(shè)計(jì)的基本知識,包括抽象概念,對象、封裝、繼承和多態(tài)的概念及實(shí)現(xiàn)方法;理解掌握異常處理;理解Java語言幾個常用基本類的使用方法。
2. 能力教學(xué)目標(biāo)
掌握利用對象分析方法學(xué)對復(fù)雜度一般的客觀世界進(jìn)行分析和抽象,能夠利用UML建模工具建立對象模型,并學(xué)會使用Eclipse等IDE進(jìn)行面向?qū)ο筌浖_發(fā)。
3. 素質(zhì)教學(xué)目標(biāo)
培養(yǎng)學(xué)生交流溝通能力、團(tuán)隊(duì)合作和創(chuàng)新精神。
四、課程學(xué)時學(xué)分、教學(xué)要求及主要教學(xué)內(nèi)容
(一)課程學(xué)時分配一覽表
章節(jié) | 主要內(nèi)容 | 總學(xué)時 | 學(xué)時分配 | |
講授 | 實(shí)踐 | |||
第1章 | 初識Java | 2 | 2 | |
第2章 | Java語言基礎(chǔ) | 4 | 4 | |
第3章 | 流程控制 | 4 | 2 | 2 |
第4章 | 數(shù)組 | 4 | 2 | 2 |
第5章 | 方法 | 4 | 2 | 2 |
第6章 | 面向?qū)ο?/span>基礎(chǔ)編程 | 16 | 12 | 4 |
第7章 | 面向?qū)ο?/span>高級編程 | 14 | 10 | 4 |
第8章 | 包及訪問控制權(quán)限 | 4 | 2 | 2 |
第9章 | 異常處理 | 4 | 2 | 2 |
第10章 | 常用類 | 8 | 6 | 2 |
學(xué)時總計(jì) | 64 | 44 | 20 |
(二)課程教學(xué)要求及主要內(nèi)容
第一章 初識Java
教學(xué)目的和要求:了解Java發(fā)展過程、Java語言特點(diǎn)和Eclipse工具的基本使用方法、理解Java運(yùn)行機(jī)制、掌握命令模式和Eclipse環(huán)境下編譯運(yùn)行一個Java源程序的方法。
教學(xué)重點(diǎn)和難點(diǎn): Java運(yùn)行機(jī)制、命令模式下編譯運(yùn)行一個Java源程序。
教學(xué)方法和手段:講授、案例教學(xué);線上學(xué)習(xí)、編程演示,多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)Java語言的發(fā)展;(2)Java的特點(diǎn);(3)Java運(yùn)行機(jī)制;(4) JDK 開發(fā)環(huán)境配置;(5)第一個Java程序;(6)Eclipse基本使用方法。
第二章 Java語言基礎(chǔ)
教學(xué)目的和要求:了解Java的符號集、Java程序的基本結(jié)構(gòu)、基本編程規(guī)范和注釋;理解Java的基本數(shù)據(jù)類型、常量和表達(dá)式。
教學(xué)重點(diǎn)和難點(diǎn): Java程序的基本結(jié)構(gòu)、基本數(shù)據(jù)類型字面常量的表示方法、基本數(shù)據(jù)類型之間的轉(zhuǎn)換。
教學(xué)方法和手段:講授、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)Java符號集;(2)Java程序的基本結(jié)構(gòu);(3)編程規(guī)范與注釋;(4)基本數(shù)據(jù)類型;(5)變量與常量;(6)表達(dá)式。
第三章 流程控制
教學(xué)目的與要求:掌握Java的三種控制結(jié)構(gòu);
教學(xué)重點(diǎn)難點(diǎn): if/else語句、switch語句、for語句、while語句、foreach語句、break語句;
教學(xué)方法和手段:講授、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)選擇結(jié)構(gòu);(2)循環(huán)結(jié)構(gòu);(3)跳轉(zhuǎn)語句。
第四章 數(shù)組
教學(xué)目的和要求:掌握一維數(shù)組和二維數(shù)組的定義、初始化及遍歷方法、掌握foreach語句的使用方法。
教學(xué)重點(diǎn)和難點(diǎn):規(guī)則二維數(shù)組的遍歷、不規(guī)則二維數(shù)組的遍歷、foreach語句的使用方法
教學(xué)方法和手段:講授、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)一維數(shù)組;(2)二維數(shù)組;(3)操作數(shù)組。
第五章 方法
教學(xué)目的和要求:理解方法重載的概念、掌握方法的定義形式和調(diào)用方式、方法重載的要求和調(diào)用原理。
教學(xué)重點(diǎn)和難點(diǎn):方法簽名的要求、方法重載的要求和調(diào)用原理。
教學(xué)方法和手段:講授、討論、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)方法的定義與調(diào)用;(2)方法重載。
第六章 面向?qū)ο?/span>基礎(chǔ)編程
教學(xué)目的和要求:理解面向?qū)ο箝_發(fā)的基本概念,掌握Java語言設(shè)計(jì)類和對象的方法、理解掌握構(gòu)造方法、封裝、this關(guān)鍵字、static關(guān)鍵字,理解代碼塊的作用和運(yùn)行時機(jī),理解單例模式的作用,掌握單例模式的編程步驟,理解對象數(shù)組的編程方法,理解內(nèi)部類的作用,掌握內(nèi)部類的編程方式。
教學(xué)重點(diǎn)和難點(diǎn):抽象、類、對象的概念、對象特征、構(gòu)造方法的作用與實(shí)現(xiàn)、封裝的概念和實(shí)現(xiàn)、this關(guān)鍵字的機(jī)制、static關(guān)鍵字的作用、靜態(tài)代碼塊的運(yùn)行時機(jī)、匿名內(nèi)部類的實(shí)現(xiàn)。
教學(xué)方法和手段:講授、討論、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)面向?qū)ο箝_發(fā)概念;(2)類與對象;(3)構(gòu)造方法;(4)封裝;(5)類設(shè)計(jì)綜合案例;(6)this關(guān)鍵字;(7)static關(guān)鍵字;(8)代碼塊;(9)單例模式;(10)對象數(shù)組;(11)內(nèi)部類。
第七章 面向?qū)ο?/span>高級編程
教學(xué)目的和要求:理解抽象類、接口、繼承、多態(tài)的概念,,了解Java 8對接口支持的新特性,理解super關(guān)鍵字的意義,掌握繼承的實(shí)現(xiàn)方法、super關(guān)鍵字和final關(guān)鍵字的使用方法,理解類之間的依賴關(guān)系、關(guān)聯(lián)關(guān)系、聚合關(guān)系和組合關(guān)系,并掌握繪制這4種關(guān)系的UML圖的方法,理解掌握instanceof關(guān)鍵字的作用和使用方法,理解多態(tài)機(jī)制,掌握多態(tài)編程方法。
教學(xué)重點(diǎn)和難點(diǎn):接口、繼承和多態(tài)的概念及編程方法,依賴關(guān)系、關(guān)聯(lián)關(guān)系、聚合關(guān)系和組合關(guān)系的UML圖,多態(tài)機(jī)制。
教學(xué)方法和手段:講授、討論、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)繼承;(2)super關(guān)鍵字;(3)final關(guān)鍵字;(4)依賴關(guān)系;(5)關(guān)聯(lián)關(guān)系;(6)聚合關(guān)系;(7)組合關(guān)系;(8)抽象類;(9)接口;(10)接口新特性;(11)抽象類與接口的關(guān)系;(12)類接口混合關(guān)系;(13)instanceof關(guān)鍵字;(14)多態(tài)概念;(15)多態(tài)案例;(16)多態(tài)機(jī)制。
第八章包和訪問控制權(quán)限
教學(xué)目的和要求:理解包的概念和作用,理解4種訪問控制權(quán)限的控制范圍,掌握利用包、類和4種訪問控制權(quán)限設(shè)置訪問權(quán)限的方法。
教學(xué)重點(diǎn)和難點(diǎn):包的使用方法、訪問權(quán)限控制矩陣。
教學(xué)方法和手段:講授、討論、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)包;(2)訪問控制權(quán)限。
第九章 異常處理
教學(xué)目的和要求:理解異常的概念、了解拋出常見異常的原因,理解掌握try/catch/finally語句、throws及throw關(guān)鍵字的作用和使用方法,掌握自定義異常的方法。
教學(xué)重點(diǎn)和難點(diǎn):異常分類、try/catch/finally的執(zhí)行機(jī)制,自定義異常、throws和throw綜合應(yīng)用。
教學(xué)方法和手段:講授、討論、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)異常概念;(2)try/catch/finally語句;(3)throws關(guān)鍵字;(4)自定義異常級throw關(guān)鍵字。
第十章 常用類
教學(xué)目的和要求:掌握Object類中的常用方法的作用及重寫,理解包裝類的作用,掌握日期處理類的使用方法,掌握數(shù)值格式化類的使用方法,理解正則表達(dá)式的概念,掌握正則表達(dá)式中常用元字符的作用,了解字符串處理類的主要方法。
教學(xué)重點(diǎn)和難點(diǎn):Object類中的equals()、clone()he toString()方法,數(shù)值格式化的模式字符串及編程步驟、正則表達(dá)式元字符及編程步驟
教學(xué)方法和手段:講授、討論、案例教學(xué);線上學(xué)習(xí)、編程演示、多媒體教學(xué)。
教學(xué)主要內(nèi)容:(1)Object類;(2)包裝類;(3)日期處理;(4)數(shù)值格式化;(5)正則表達(dá)式;(6)字符串處理。
五、選用教材及主要參考書目
教材:
覃遵躍,周清平,蔡國民,張彬連.利用案例輕松學(xué)習(xí)Java語言[M]. 北京:清華大學(xué)出版社,2013
主要參考書目
[1] 李興華.Java開發(fā)實(shí)戰(zhàn)經(jīng)典(第2版)[M]. 北京:清華大學(xué)出版社, 2018
[2] 李剛. 瘋狂Java講義(第五版)[J]. 北京:機(jī)械工業(yè)出版社, 2019.
[3] (美)凱 S.霍斯特曼(Cay S. Horstmann) . Java核心技術(shù).卷Ⅰ基礎(chǔ)知識(第8版)[M]. 2016.
六、考核方式和成績評定
1、考核方式:本課程的考核方式為閉卷考試。
2、成績評定:
成績評定采用百分制,該課程成績由以下6部分構(gòu)成(根據(jù)實(shí)際情況可以調(diào)整,但期末測試不能超過40%):
序號 | 考核名稱 | 占比 | 考核方式 |
第一部分 | 出勤 | 5% | 線上超星學(xué)習(xí)通考勤 |
第二部分 | 課堂表現(xiàn) | 5% | 線上搶答、線上選人 |
第三部分 | 實(shí)驗(yàn)考核 | 10% | 線上提交實(shí)驗(yàn)報告 |
第四部分 | 能力測試 | 20% | 線下課堂10分鐘的快題測試,線上提交測試結(jié)果;或者線上10分鐘的快題測試 |
第五部分 | 期末考試 | 40% | 線下閉卷考試,有條件改革為線上測試 |
第六部分 | 研討式學(xué)習(xí) | 20% | 線上預(yù)習(xí)、線上提交方案,線下研討 |
七、其他說明
1、 充分利用超星慕課平臺開展信息化教學(xué),在慕課平臺部署教學(xué)文件、作業(yè)、能力測試、模式考試、課程競賽和研討式學(xué)習(xí)方案等,學(xué)生通過在平臺提交文檔。調(diào)動廣大學(xué)生積極參與,提高學(xué)生的學(xué)習(xí)興趣、學(xué)習(xí)積極性和主動性。
2、 采用研討式教學(xué)方法,激活學(xué)生學(xué)習(xí)主動性,培養(yǎng)學(xué)生團(tuán)隊(duì)協(xié)作精神、表達(dá)能力以及自學(xué)學(xué)習(xí)的能力。
3、 采用案例教學(xué),增進(jìn)學(xué)生的學(xué)習(xí)積極性和形成對新概念的認(rèn)識。
4、 采用問題驅(qū)動法,激發(fā)學(xué)生的學(xué)習(xí)主動性和加深對一些概念的理解。
5、 利用多媒體教學(xué)手段,教師現(xiàn)場編制和演示部分程序。
6、 利用網(wǎng)絡(luò)資源進(jìn)行教學(xué),積極建設(shè)網(wǎng)絡(luò)資源,
大綱執(zhí)筆人:《Java程序設(shè)計(jì)基礎(chǔ)》教學(xué)團(tuán)隊(duì)
大綱審核人:軟件學(xué)院教學(xué)指導(dǎo)委員會
2018年3月