《Java程序設(shè)計(jì)基礎(chǔ)》課程教學(xué)大綱
一、 課程說明
課程編碼 | 4300110 | 課程類別 | 專業(yè)基礎(chǔ)課 | ||
修讀學(xué)期 | 3學(xué)期 | 學(xué) 分 | 4 | 學(xué) 時(shí) | 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ù)對(duì)客觀世界建模的方法,;能比較熟練地使用Java語言實(shí)現(xiàn)復(fù)雜度一般的面向?qū)ο蟮某绦蛟O(shè)計(jì),;初步掌握面向?qū)ο缶幊汰h(huán)境的使用。
三,、課程教學(xué)目標(biāo)
通過本課程的學(xué)習(xí)(包括線上觀看視頻,、線上快題測(cè)試、線下課堂能力測(cè)試,、課堂活動(dòng)(討論,、研討),、上機(jī)實(shí)驗(yàn)和作業(yè)),培養(yǎng)學(xué)生面向?qū)ο笤O(shè)計(jì)的思想,,訓(xùn)練面向?qū)ο蟮乃季S,,理解模塊化程序和數(shù)據(jù)抽象的概念,學(xué)會(huì)用對(duì)象的思維來思考問題,、解決問題,。要求學(xué)生達(dá)到如下要求:
1. 知識(shí)教學(xué)目標(biāo)
了解Java語言結(jié)構(gòu)化程序設(shè)計(jì)的基本知識(shí),包括數(shù)據(jù)類型,、常量變量和表達(dá)式,、流程控制語句、數(shù)組與方法,;理解掌握J(rèn)ava語言面向?qū)ο蟪绦蛟O(shè)計(jì)的基本知識(shí),,包括抽象概念,對(duì)象,、封裝,、繼承和多態(tài)的概念及實(shí)現(xiàn)方法;理解掌握異常處理,;理解Java語言幾個(gè)常用基本類的使用方法,。
2. 能力教學(xué)目標(biāo)
掌握利用對(duì)象分析方法學(xué)對(duì)復(fù)雜度一般的客觀世界進(jìn)行分析和抽象,能夠利用UML建模工具建立對(duì)象模型,,并學(xué)會(huì)使用Eclipse等IDE進(jìn)行面向?qū)ο筌浖_發(fā),。
3. 素質(zhì)教學(xué)目標(biāo)
培養(yǎng)學(xué)生交流溝通能力、團(tuán)隊(duì)合作和創(chuàng)新精神,。
四,、課程學(xué)時(shí)學(xué)分、教學(xué)要求及主要教學(xué)內(nèi)容
(一)課程學(xué)時(shí)分配一覽表
章節(jié) | 主要內(nèi)容 | 總學(xué)時(shí) | 學(xué)時(shí)分配 | |
講授 | 實(shí)踐 | |||
第1章 | 初識(shí)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>高級(jí)編程 | 14 | 10 | 4 |
第8章 | 包及訪問控制權(quán)限 | 4 | 2 | 2 |
第9章 | 異常處理 | 4 | 2 | 2 |
第10章 | 常用類 | 8 | 6 | 2 |
學(xué)時(shí)總計(jì) | 64 | 44 | 20 |
(二)課程教學(xué)要求及主要內(nèi)容
第一章 初識(shí)Java
教學(xué)目的和要求:了解Java發(fā)展過程,、Java語言特點(diǎn)和Eclipse工具的基本使用方法,、理解Java運(yùn)行機(jī)制、掌握命令模式和Eclipse環(huán)境下編譯運(yùn)行一個(gè)Java源程序的方法,。
教學(xué)重點(diǎn)和難點(diǎn): Java運(yùn)行機(jī)制,、命令模式下編譯運(yùn)行一個(gè)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)第一個(gè)Java程序;(6)Eclipse基本使用方法,。
第二章 Java語言基礎(chǔ)
教學(xué)目的和要求:了解Java的符號(hào)集,、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符號(hào)集;(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ì)類和對(duì)象的方法、理解掌握構(gòu)造方法,、封裝,、this關(guān)鍵字、static關(guān)鍵字,,理解代碼塊的作用和運(yùn)行時(shí)機(jī),,理解單例模式的作用,掌握單例模式的編程步驟,,理解對(duì)象數(shù)組的編程方法,,理解內(nèi)部類的作用,,掌握內(nèi)部類的編程方式。
教學(xué)重點(diǎn)和難點(diǎn):抽象,、類,、對(duì)象的概念、對(duì)象特征,、構(gòu)造方法的作用與實(shí)現(xiàn),、封裝的概念和實(shí)現(xiàn)、this關(guān)鍵字的機(jī)制,、static關(guān)鍵字的作用,、靜態(tài)代碼塊的運(yùn)行時(shí)機(jī)、匿名內(nèi)部類的實(shí)現(xiàn),。
教學(xué)方法和手段:講授,、討論、案例教學(xué),;線上學(xué)習(xí)、編程演示,、多媒體教學(xué),。
教學(xué)主要內(nèi)容:(1)面向?qū)ο箝_發(fā)概念;(2)類與對(duì)象,;(3)構(gòu)造方法,;(4)封裝;(5)類設(shè)計(jì)綜合案例,;(6)this關(guān)鍵字,;(7)static關(guān)鍵字;(8)代碼塊,;(9)單例模式,;(10)對(duì)象數(shù)組;(11)內(nèi)部類,。
第七章 面向?qū)ο?/span>高級(jí)編程
教學(xué)目的和要求:理解抽象類,、接口、繼承,、多態(tài)的概念,,,了解Java 8對(duì)接口支持的新特性,,理解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)自定義異常級(jí)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)字符串處理,。
五、選用教材及主要參考書目
教材:
覃遵躍,周清平,蔡國(guó)民,張彬連.利用案例輕松學(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ǔ)知識(shí)(第8版)[M]. 2016.
六,、考核方式和成績(jī)?cè)u(píng)定
1,、考核方式:本課程的考核方式為閉卷考試。
2,、成績(jī)?cè)u(píng)定:
成績(jī)?cè)u(píng)定采用百分制,,該課程成績(jī)由以下6部分構(gòu)成(根據(jù)實(shí)際情況可以調(diào)整,但期末測(cè)試不能超過40%):
序號(hào) | 考核名稱 | 占比 | 考核方式 |
第一部分 | 出勤 | 5% | 線上超星學(xué)習(xí)通考勤 |
第二部分 | 課堂表現(xiàn) | 5% | 線上搶答,、線上選人 |
第三部分 | 實(shí)驗(yàn)考核 | 10% | 線上提交實(shí)驗(yàn)報(bào)告 |
第四部分 | 能力測(cè)試 | 20% | 線下課堂10分鐘的快題測(cè)試,,線上提交測(cè)試結(jié)果;或者線上10分鐘的快題測(cè)試 |
第五部分 | 期末考試 | 40% | 線下閉卷考試,,有條件改革為線上測(cè)試 |
第六部分 | 研討式學(xué)習(xí) | 20% | 線上預(yù)習(xí),、線上提交方案,線下研討 |
七,、其他說明
1,、 充分利用超星慕課平臺(tái)開展信息化教學(xué),在慕課平臺(tái)部署教學(xué)文件,、作業(yè),、能力測(cè)試、模式考試,、課程競(jìng)賽和研討式學(xué)習(xí)方案等,,學(xué)生通過在平臺(tái)提交文檔。調(diào)動(dòng)廣大學(xué)生積極參與,,提高學(xué)生的學(xué)習(xí)興趣,、學(xué)習(xí)積極性和主動(dòng)性。
2,、 采用研討式教學(xué)方法,,激活學(xué)生學(xué)習(xí)主動(dòng)性,培養(yǎng)學(xué)生團(tuán)隊(duì)協(xié)作精神、表達(dá)能力以及自學(xué)學(xué)習(xí)的能力,。
3,、 采用案例教學(xué),增進(jìn)學(xué)生的學(xué)習(xí)積極性和形成對(duì)新概念的認(rèn)識(shí),。
4,、 采用問題驅(qū)動(dòng)法,激發(fā)學(xué)生的學(xué)習(xí)主動(dòng)性和加深對(duì)一些概念的理解,。
5,、 利用多媒體教學(xué)手段,教師現(xiàn)場(chǎng)編制和演示部分程序,。
6,、 利用網(wǎng)絡(luò)資源進(jìn)行教學(xué),積極建設(shè)網(wǎng)絡(luò)資源,,
大綱執(zhí)筆人:《Java程序設(shè)計(jì)基礎(chǔ)》教學(xué)團(tuán)隊(duì)
大綱審核人:軟件學(xué)院教學(xué)指導(dǎo)委員會(huì)
2018年3月