第一篇:《Java程序設計》課程教學資源索引
《Java程序設計》課程教學資源索引
說明:
本課程針對零Java編程基礎的計算機專業學生,前提是學過C語言。課程主要講授J2SE,教學目的是帶領學生邁入Java開發的大門,初步理解和把握面向對象的思想與理論,為進一步學習J2EE,或者Android開發掃清障礙。所提供之示例均使用Eclipse Indigo,在JDK 1.6下調試通過。
=========================
第一部分 Java開發基礎
第一講:Java導論與開發環境。包括兩個PDF文檔,主要介紹Java的基礎知識、Java開發環境的搭建,以及Java開發工具的選擇和使用,是Java學習的第一步。Java導論與Java開發環境 2 Eclipse初步
第二講 Java應用程序與Applet。包容一個pdf文檔及相關示例源碼。本講主要介紹兩種最基本的Java程序類型,并介紹Java編程的一些基礎知識。第三講 Java語法基礎。包容兩個pdf文檔及相關示例源碼。1 Java語法基礎 2 程序控制結構
這一講基本上介紹完了Java最基本的語法,學生已經可以使用Java編寫簡單的”結構化“程序。另外,為方便學習,資源包中還添加了從Oracle網站上下載的Java語言規范3.0(pdf版本)。第四講 數組。
與C不一樣,Java中的數組是一個對象,并且擁有一些獨特的性質(比如可以定義“不整齊”的多維數組,本質上是以“數組”為“元素類型”的一維數組),另外,數組在實際開發中用得很廣泛,本講介紹了數組排序與查找的示例,并布置了一個作業:將數字轉換為”漢字表達“。此作業的參考答案在下次課程中給出。第五講 方法
本講介紹Java編程中與”方法“相關的特性,其中的重點是”方法重載(overload)“的概念。另外,本講還介紹了JDK中用于處理日期Calenda類的使用方法,同學們將會發現這個類擁有一些比較特殊的行為特性,這些特性可能有點違背“常識”。Calenda類的設計是好是壞,就由同學們自己感悟吧。第六講 字符串
Java中字符串是一個對象,它的最大特點是“只讀”。同學們需要理解為什么Java要將字符串設置為只讀的,字符串賦值的真正含義,如果的確需要一個能修改內容的字符串,應該選用哪個類。除此之外,還簡要介紹了另幾個與字符串處理相關的類。
到此為止,Java編程基礎介紹完畢。后繼的課程將系統介紹Java的面向對象特性,這些是重點內容,對同學們參與實際項目開發非常重要,必須扎實掌握。
第二部分 Java面向對象特性
第七講 面向對象理論基礎
本講以一個小學數學題為例,講解結構化方法與面向對象方法差異,并介紹了OOA、OOD和OOP的概念,對“愚公移山”這一傳統故事從“軟件開發”的視角進行重新解釋,幫助同學們直觀地了解面向對象軟件的開發過程。第八講 創建與使用類
類和對象是面向對象編程的兩個核心概念,本講介紹了Java面向對象編程中至關重要的內容:類的“模板”,原始數據類型與對象類型變量的內存模式,類的靜態成員,類初始化塊,包裝類,特別地,在本講的最后介紹了JDK所提供的一個字節碼反匯編器javap,向同學們展示了使用javap分析代碼的基本技巧。第九講 包
主要介紹如何使用包中的類,如何自定義包,下載的資源中除了本講相關資料外,還包括第五講布置的作業參考答案。第十講 繼承、接口與多態
本講介紹面向對象的核心特性,以一個“動物園”示例直觀展示了多態應用于開發所帶來的好處,并通過javap反匯編展示編譯器是如何為多態代碼生成字節碼指令,而這些指令又是如何在運行時實現多態特性的。第十一講 內部類
本講內容比較簡單,主要是Java的內部類特性。內部類在實際開發中用得較多,關鍵點在于了解清楚內部類如何訪問外部類中的成員。第十二講 異常處理
本講介紹Java異常處理機制的基礎知識,這部分內容比較重要,在實際開發中有廣泛的應用。
第十三講 對象組合與數據結構
本講集中介紹Java面向對象編程的基本技巧,特別是如何使用Java實現常見的鏈表、隊列、樹等數據結構。用面向對象的思想編程實現各種數據結構,是每一名Java軟件工程師所必須具備的基本技能。另外,本資源包中還包容了兩個課程設計題目: 設計一個支持多級括號及運算符優先級的“四則運算計算器” 2 設計一個能求解線性方程組的程序
通過完成這兩個程序設計題目,能充分鍛煉同學們的開發能力,促進對數據結構與算法的學習。有關數據結構與算法的問題經常會成為大公司的面試題。第十四講 對象集合
JDK中提供了數十個大大小小的對象集合類型,基本上能滿足開發中的實際需求。但由于歷史原因,JDK中的這些集合類在設計上存在著一些不合理的地方,包容了一些陷阱。本講會涉及一些這方面的內容,同時展示如何通過閱讀JDK源碼理解Java集合類的特性,并幫助同學們“繞開”這些隱藏的陷阱。第十五講 泛型程序設計
依稀記得在Java剛出來沒多久時,記者采訪Java之父——James Gosling,他說Java不打算引入泛型,但形勢比人強,當一種語言被廣泛使用時,原先覺得并不重要的功能反而突顯出來,Java最終還是引入了泛型。但由于最初并未考慮泛型,所以JVM基本上對泛型是“無視”的,這導致javac不得不將泛型代碼“翻譯”為傳統的代碼。本講介紹了Java泛型編程的特點,其中有關編譯器翻譯泛型代碼的“擦除”原理是重點,理解它是把握Java泛型編程特性的關鍵。
到此為止,有關Java面向對象基本特性介紹完畢,后面將介紹JDK中另外一些比較深入的技術領域。
第三部分 深入Java技術領域
第十六講 Java GUI界面設計與事件處理
本講包容4個PDF文檔以及數十個代碼示例,系統地介紹了Java AWT與Swing開發GUI應用程序的基礎知識。雖然由于性能問題,直接使用Java開發桌面應用相當罕見,但本部分所涉及到的知識卻相當有用,特別是AWT事件處理模型,在實際開發中有廣泛的應用,需仔細理解并把握。另外,有關容器的概念,有關布局管理器的功用,都能自然地延伸到Android應用開發領域。
JDk中有關Java 2D API部分的內容并未介紹,JavaFX和SWT也僅是提了一下,需要用到它們的同學請自學。第十七講 文件與流操作
Java中存取文件內容是通過流對象實現的,而在J2EE開發中,很多技術都要應用流來傳輸與存儲信息,因此掌握本講的內容是進一步學習J2EE技術的前提。JDK中與流相關的類型有數十個,相當地繁雜,本講選擇了一些進行詳細介紹,其余的只是提供一些實例供大家自行閱讀。第十八講 序列化
序列化是一個很重要的技術,它的主要用途是把內存中的對象保存到一個流中。其他領域的技術有很多都應用了序列化,因此,它也是必須掌握的內容。
第十九講 反射
本講包容3個內容:1 反射技術基礎 2 JavaBean 3 注解。這三個技術在許多Java框架中用得很多。默認情況下,本講用到的組件Eclipse中都已默認安裝,為了方便起見,在資源包中也提供了獨立的組件包,可以在Eclipse中添加到項目的Build Path中。
第二十講 Ant
Ant是Java平臺上一個非常優秀的自動化構建工具,簡單易用同時又功能強大。本講介紹Ant的相關知識。為了便于學習,我從Apache網站上下載了Ant 1.8.2的組件包、文檔與源碼,一并加入到了教學資源包中。
第二十一講 多線程
在多核時代,多線程是所有Java開發者必須掌握的技能。本講介紹了Java多線程開發的基礎知識,并從JDK中選取典型的常用的組件(比如各種鎖和線程安全的數據結構)進行了介紹。我從互聯網上搜集到了一些公司面試的真實Java多線程試題,將它們作為教學實例一并加入到了教學資源包中,相信會對同學們順利通過技術面試有所幫助。
到此為止,本學期有關J2SE部分的基礎教學內容講授完畢。作為Java平臺技術的自然延伸,下一講將介紹Android平發平臺的基礎知識。
第二十二講 Android開發技術基礎
包容4個PDF文檔及若干個示例項目,主要介紹Android開發環境的搭建、Android應用的開發過程及Android編程中的核心概念,其目的主要是幫助學生初步了解Android平臺,為其順利進行Android開發打開大門。
至此,《Java技術及應用》課程全部更新完畢,這套教學資源匯集了我所讀過的多本Java技術書籍以及多個在互聯網上公開發布的其他網友奉獻的技術資源,難于一一列舉,特在此對奉獻這些免費優質技術資源的人表示感謝。我個人主要完成的工作是,對這些龐雜的技術資源進行了整理與重構,便于教師教學和學生自學,希望我所發布的這些資料能給Java教師提供更豐富的教學資源,也能幫助廣大初學者更有效率地學習和掌握軟件技術。
謝謝大家!
第二篇:Java程序設計課程教案
Java使用教材:
程序設計課程教案(普通版)
Java程序設計教程,雍俊海主編,清華大學出版社,2007,國家十一五規劃教材 主要參考書:
《Java語言程序設計》,郎波,清華大學出版社,2005年5月。《Java程序設計教程》,施霞萍等.機械工業出版社,2006 《Java編程思想第3版》,[美]埃克爾(Eckel,B.)著,陳昊鵬等譯.機械工業出版社,2005J 《JAVA軟件開發(第二版)》,Russel Winder&Graham Roberts著,竇巍 譯,人民郵電出版社,2004.2 課程總體目標
本課程是軟件工程專業開設的學科基礎課。本課程的教學任務是通過Java程序設計的課堂講授、課內實驗,課外自主試驗等教學環節,培養學生程序設計使用Java語言進行程序設計的基本能力,并且養成學生良好的編程習慣和規范的編程風格。使學生掌握較扎實的 Java 語言基礎,理解面向對象程序設計的思想,為Java后續課程的學習打下堅實的基礎。
課程的主要內容如下:
1、緒論
2、Java程序設計基礎
3、Java面向對象程序設計
4、數組、字符串、向量和哈希表
5、泛型、枚舉與for語句的簡化寫法
6、Java異常處理與遞歸
7、文件與數據流
8、Java圖形用戶界面程序設計
9、多線程程序設計
10、網絡程序設計
第1章 緒論
一、教學目的和要求
了解Java語言的發展歷史,Java語言的特點,學會安裝配置Java開發環境,能夠編譯和運行Java程序。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
Java語言的發展歷史 Java語言的特點
Java開發環境的安裝與配置
Java程序開發過程以及命令行狀態下編譯與運行過程介紹
2、教學重點
Java語言的特點,開發環境配置,編譯運行方法
3、教學難點
理解Java程序為什么能夠一次編譯到處運行;為什么要配置Path環境變量;編譯與運行的注意事項。
4、解決辦法
原理講解,操作演示
5、學時分配
發展歷史:0.5課時 Java語言的特點:0.5課時
Java開發環境的安裝與配置:0.5課時
Java程序開發過程以及命令行狀態下編譯與運行過程介紹:0.5課時
三、教學過程(教學方法、實施步驟)
使用PPT講解,運行環境配置,編譯運行Java程序則現場操作演示。
四、課外學習要求和作業要求
課外作業:要求下載JDK,自行安裝配置并編譯運行HelloWorld.java程序
第2章 Java程序設計基礎
一、教學目的和要求
了解Java中數據的類型,表示方法,變量的聲明,掌握使用標識符命名Java中各種成分的規定和規范;正確掌握表達式的書寫方法;能夠使用各種控制結構實現程序的邏輯;掌握結構化程序設計的思想和算法描述工具的使用。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
標識符和關鍵字 基本數據類型 常量和變量 數據類型轉換 運算符:算術運算符、關系運算符、布爾邏輯運算符、位運算符、賦值類運算符、條件運算符等 表達式
程序流程控制語句:if和switch語句;for、while、do~while循環語句;break、Continue和return語句 結構化程序設計
2、教學重點
基本數據類型和類型轉換,常量和變量,運算符與表達式,程序流程控制語句。
3、教學難點
數據類型轉換;前綴自增、自減運算符與后綴自增、自減運算符的區別;程序流程控制語句。分支語句的嵌套;循環語句的嵌套;標號的概念與使用。
4、解決辦法
原理講解,操作演示
5、學時分配
標識符和關鍵字,基本數據類型,常量和變量:2學時 數據類型轉換,運算符,表達式:1學時
程序流程控制語句,break、Continue和return語句:2學時 結構化程序設計:1學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求 課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。要求學會使用算法描述工具表示和設計程序的算法。
第3章 面向對象程序設計
一、教學目的和要求
了解面向對象程序設計基本思想,掌握類的設計方法、實例對象的創建與使用。了解變量作用域范圍與參數傳遞方式。了解并能運用Java中面向對象的封裝性、繼承性、多態性;
掌握訪問權限的控制方法,修飾詞abstract、static和final的使用;掌握包、抽象類、接口、內部類的概念和使用方法。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
類和對象的基本概念。面向對象程序設計基本思想。
類的設計、構造方法、類的成員變量和成員方法。實例對象的創建與使用。
變量作用域范圍與參數傳遞方式。繼承性。
多態性:靜態多態性和動態多態性。封裝性和訪問權限控制。
修飾詞abstract、static和final。包的概念和使用 抽象類和接口。內部類。
2、教學重點
類的定義,對象的創建,構造方法的定義與使用,方法的重載與覆蓋,類的繼承,包,抽象類和接口。
3、教學難點
類與對象的概念、創建和使用;方法重載的規則;類的繼承與運行時多態,類繼承時對構造方法的處理問題,訪問控制權限的使用;方法覆蓋的規則;抽象類的應用,接口的應用;抽象類與接口的異同。
4、解決辦法
原理講解,操作演示
5、學時分配
類和對象的基本概念,面向對象程序設計基本思想:2學時
類的設計、構造方法、類的成員變量和成員方法,實例對象的創建與使用,變量作用域范圍與參數傳遞方式:2學時
繼承性,方法覆蓋,多態性:靜態多態性和動態多態性:2學時 封裝性和訪問權限控制,修飾詞abstract、static和final,包的概念和使用:2學時
抽象類和接口,內部類:2學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。安排4個學時的課內上機實驗。
第4章 數組、字符串、向量與哈希表
一、教學目的和要求
了解一維數據和多維數組的聲明與使用,掌握遍歷數組的方法,了解并能夠使用字符串String的常用方法,掌握StringBuffer的用法,了解并掌握向量Vector,哈希表Hashtable、HashMap和WeakHashMap的用法。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
數組:一維數據和多維數組。字符串:String和StringBuffer。向量:Vector。
哈希表:Hashtable、HashMap和WeakHashMap。
2、教學重點
一維數組的使用,String和StringBuffer的構造方法和常見方法的使用,Vector類的使用,哈希表類的創建和使用。
3、教學難點
多維數組的聲明和使用,數組的初始化方法,String和StringBuffer的使用方法的區別,哈希表類的使用。
4、解決辦法
原理講解,操作演示
5、學時分配
數組:一維數據和多維數組:1.5學時 字符串:String和StringBuffer:1學時 向量:Vector,哈希表:1.5學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。要求作業必須進行上機調試。
第5章 異常處理
一、教學目的和要求
了解異常的概念,異常類的層次結構;掌握異常的拋出、捕獲和處理方法;能夠自定義異常類并且使用自定義異常類。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
異常的概念。異常類的層次結構。異常的拋出、捕獲和處理。自定義異常類
2、教學重點
異常的基本概念,異常的拋出捕獲和處理,自定義異常類。
3、教學難點
異常的處理機制;Try-catch-finallly異常處理結構的執行流程特點;自定義異常類。
4、解決辦法
原理講解,操作演示
5、學時分配
異常的概念,異常類的層次結構:0.5學時 異常的拋出、捕獲和處理:1學時 自定義異常類:0.5學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。安排一次課內上機實驗。
第6章 文件與數據流
一、教學目的和要求
了解輸入流與輸出流的基本概念,掌握常見輸入和輸出流類的使用,掌握文件和隨機存取文件的操作,了解讀寫器的使用方法,掌握對象序列化的概念。能夠編寫從鍵盤輸入數據以及對磁盤文件進行讀寫的程序
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
輸入流與輸出流的基本概念。
常見輸入和輸出流類:InputStream和OutputStream,DataInputStream和DataOutputStream,FileInputStream和FileOutputStream,PrintStream, 帶緩存的輸入流和輸出流。文件和隨機存取文件。
讀寫器:Reader和Writer,FileReader和FileWriter,帶緩存的讀寫器,PrintWriter。
對象序列化。
2、教學重點
輸入輸出流的基本概念,文件輸入流和文件輸出流,文件與目錄管理,隨機存取文件。
3、教學難點
字節流與字符流的選用,節點流與過濾流的配合使用,隨機讀寫文件,對象序列化。
4、解決辦法
原理講解,操作演示
5、學時分配
輸入流與輸出流的基本概念,常見輸入和輸出流類的使用,過濾流的使用:2學時
文件和隨機存取文件,讀寫器:Reader和Writer,FileReader和FileWriter,帶緩存的讀寫器,PrintWriter,對象序列化:2學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。安排一次課內上機實驗。
第7章 圖形用戶界面程序設計
一、教學目的和要求
了解基本組件和容器組件,掌握主要布局管理器的概念和使用方法,掌握事件處理機制及其實現方法,了解Swing的特點和類的層次結構,Swing常見組件和容器;掌握鍵盤和鼠標事件處理方法,了解高級圖形用戶界面:菜單、樹、表格和多文檔界面的編程方法;掌握Java的圖形程序設計。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
AWT功能和類的層次結構。(選講)AWT的基本組件和容器組件。(選講)布局管理器。事件處理機制。
Swing的特點和類的層次結構。Swing常見組件和容器。鍵盤和鼠標事件處理。
高級圖形用戶界面:菜單、樹、表格和多文檔界面。
小應用程序:Applet的基本工作原理, Applet生命周期, Applet類中的重要方法, Applet編寫方法和Applet與瀏覽器的參數傳遞。(選講)Java的圖形程序設計。
2、教學重點
常用的GUI組件和容器,布局管理器,事件處理機制,菜單和表格。
3、教學難點:
布局管理器的靈活應用,事件處理機制,表格處理。
4、解決辦法 原理講解,操作演示
5、學時分配
常用圖形控件,基本組件和容器組件,布局管理器:2學時 事件處理機制:2學時
Swing的特點和類的層次結構,Swing常見組件和容器:2學時 鍵盤和鼠標事件處理:2學時
高級圖形用戶界面:菜單、樹、表格和多文檔界面:2學時
小應用程序:Applet的基本工作原理, Applet生命周期, Applet類中的重要方法, Applet編寫方法和Applet與瀏覽器的參數傳遞。:2學時
Java的圖形程序設計:2學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。安排4學時課內上機實驗。
第8章 多線程程序設計
一、教學目的和要求
了解基本組件和容器組件,掌握主要布局管理器的概念和使用方法,掌握事件處理機制及其實現方法,了解Swing的特點和類的層次結構,Swing常見組件和容器;掌握鍵盤和鼠標事件處理方法,了解高級圖形用戶界面:菜單、樹、表格和多文檔界面的編程方法;掌握Java的圖形程序設計。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
程序、進程、線程的概念。線程的創建。
線程的狀態與線程的控制。線程優先級與線程調度。多線程的同步問題和處理方法。
2、教學重點
線程的創建、線程的控制與調度,多線程同步問題。
3、教學難點
兩種創建線程的方法的區別,啟動線程的start()方法與直接調用run()方法的區別,多線程同步問題和處理方法。
4、解決辦法
原理講解,操作演示
5、學時分配
程序、進程、線程的概念,線程的創建,線程的狀態與線程的控制:2學時 線程優先級與線程調度,多線程的同步問題和處理方法:2學時
三、教學過程(教學方法、實施步驟)
使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。安排2學時課內上機實驗。第9章 網絡程序設計
一、教學目的和要求
了解基本組件和容器組件,掌握主要布局管理器的概念和使用方法,掌握事件處理機制及其實現方法,了解Swing的特點和類的層次結構,Swing常見組件和容器;掌握鍵盤和鼠標事件處理方法,了解高級圖形用戶界面:菜單、樹、表格和多文檔界面的編程方法;掌握Java的圖形程序設計。
二、講授的內容提要和重點、難點及其解決方法,學時分配
1、教學內容
基于URL獲取網絡資源 基于TCP的網絡程序設計 基于UDP的網絡程序設計
2、教學重點
基于URL獲取網絡資源,基于TCP的網絡程序設計。
3、教學難點
支持多客戶端/服務器端程序的設計與開發。
4、解決辦法
原理講解,操作演示
5、學時分配
基于URL獲取網絡資源:1學時 基于TCP的網絡程序設計:1.5學時 基于UDP的網絡程序設計:1.5學時
三、教學過程(教學方法、實施步驟)使用PPT講解,對每一個編程知識點編寫Java程序進行運行演示。
四、課外學習要求和作業要求
課外作業:要求復習課堂教學內容,對主要知識點布置作業,要求編寫程序并條試運行。
第三篇:《Java程序設計》課程簡介
《Java程序設計》選修課簡介
一、課程基本信息
課程名稱:Java程序設計
英文名稱:Java programming
課程類別:專業選修課
考核方式:考查
先修課程:離散數學、C語言、數據結構
學時:24
二、課程簡介
Java語言是面向對象技術成功應用的著名范例,是目前最為流行的程序設計語言之一(長期占據編程語言使用排名的前2位),其集良好的跨平臺性、安全性和OO特征,使之得到了廣泛的支持和應用。本課程旨在介紹Java語言的基本知識,訓練Java標準版本(J2SE)的編程基本功,建立面向對象的編程思維框架。通過本課程的學習,使同學掌握面向對象程序設計的基本概念與方法,掌握以Java 語言為基礎的面向對象編程技術,初步掌握以Java為核心的應用軟件開發。教學內容包括:Java語言緒論、Java語言的基本要素、Java語言結構化程序設計、Java 面向對象技術、Java輸入輸出、Java常用基礎類、Java界面設計與多媒體技術、Java多線程、Java數據庫編程和Java網絡編程等。教材:1.李衛華編著.Java技術及其應用.清華大學出版社,2009,ISBN :
9787302198796.Java程序設計課程簡介
本課程是計算機相關專業的主要程序設計課程。Java語言是目前廣為流行的面向對象程序設計語言之一,適用于網絡上編程,滿足Internet上軟件開發的需要,它是一門概念性和實踐性都很強的專業課程。通過學習本課程,應能準確完整地理解Java語言的語法、語義規則;掌握Java語言的數據類型、表達式及控制流程;運用面向對象程序設計思想,正確的閱讀、分析程序和設計程序,掌握面向對象程序設計方法,提高程序設計能力,以適應計算機軟件開發不斷發展的需要。
本課程分別介紹了Java的語言基礎、面向對象結構、基本輸入輸出、增強性能類、收集與數據結構應用、圖形用戶界面及桌面應用、小程序及多媒體應用、JDBC與數據庫應用、JavaBeans及組件應用、網絡與Web服務應用等方面的內容,而且與各種應用結合起來介紹,使學生了解新技術后很快可以用到實際程序開發中。
第四篇:【Java程序設計】課程教學大綱
【Java程序設計】課程教學大綱
第一部分 課程基本信息
【課程代碼】 【學分】
【參考學時】 108學時 【講授學時】 72學時 【實驗學時】 36學時 【課程性質】 任選課 【課程基礎】 計算機基礎
【適應對象】 計算機、信息管理信息系統、電子商務、自動化 【教學目的】
了解國際上最新的計算機編程設計思想,并能初步運用Java技術和基本開發工具進行計算機軟件代碼設計。培養學生用面向對象程序設計思想和邏輯思維方式進行計算機編程研究,啟發學生的創新意識,提高學生在軟件設計過程中分析問題和解決問題的實際動手能力,使學生的理論知識和實踐技能得到共同發展。【內容提要】
本課程從面向對象的基本概念入手,介紹Java語言的主要特征和編程方法,包括:面向對象的程序設計思想;簡單Java程序的開發過程;數據運算、流控制和數組、Java的類、包和接口、深入理解Java(涉及Java的變量傳遞、多態和虛方法調用,以及對象的構造和銷毀);異常處理;Java的工具類和常用算法;Java的多線程;輸入/輸出流及基于文本的應用;圖形用戶界面等內容。
第二部分 主要教學內容和基本要求
第1章 引論
第一節 面向對象的程序設計 第二節 Java語言的發展歷史 第三節 Java目前的主要應用 第四節 Java語言的特點 第五節 Java與C++的比較 第六節 Java程序工作機制 第七節 JDK的安裝 第八節 Java應用程序舉例 【基本要求】
一、熟練掌握每種程序的基本結構。
二、掌握Java程序的工作機制;Java程序包含應用程序和小應用程序兩種不同類型。
三、了解J2SDK開發環境,及開發Java程序的過程;了解Java程序設計語言的特性;了解Java與C++兩種語言的不同。
四、實踐教學要求:掌握Java環境的基本參數配置和運行簡單Java程序。【參考學時】4學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第2章 Java語言基礎
第一節 標識符、保留字、分隔符、注釋
一、Java標識符、二、Java保留字、分隔符 第二節 變量和數據類型
一、常量和變量
二、數據類型
三、表達式和運算符
四、簡單的輸入輸出 【基本要求】
一、熟練掌握各種簡單數據類型的使用;運算符和表達式的使用;Java程序簡單的輸入輸出方法。
二、掌握標識符的定義規則。
三、了解常用的保留字和分隔符。
四、實踐教學要求:掌握Java各種數據類型、運算符和表達式在程序中的應用。【參考學時】4學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第3章 控制結構
第一節 流程控制分類 第二節 選擇語句
一、if語句
二、switch語句 第三節 循環結構
一、for 語句
二、while語句
三、do-while 語句 第四節 跳轉控制語句
一、break語句
二、continue語句
三、return語句 【基本要求】
一、熟練掌握選擇和循環語句的使用。
二、掌握跳轉語句的使用。
三、實踐教學要求:在程序中使用選擇、循環和跳轉語句來解決不同的問題。【參考學時】4學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第4章 類和對象
第一節 面向對象的基本概念
一、抽象
二、封裝
三、對象 第二節 類
一、類的定義
二、構造函數 第三節 方法
一、方法定義
二、方法的調用
三、Java API中的方法 第四節 訪問控制符
一、公共訪問控制符public
二、缺省訪問控制符
三、私有訪問控制符private
四、保護訪問控制符protected
五、私有保護訪問控制符private protected 第五節 靜態修飾符、靜態字段和方法
一、靜態修飾符、靜態字段、靜態常量
二、靜態方法、main方法 第六節 抽象類與抽象方法
一、抽象類
二、抽象方法
第七節 最終類、最終屬性、最終方法與終結器
一、最終類
二、最終屬性、最終方法 【基本要求】
一、熟練掌握Java程序的結構;類的定義;方法的定義、調用;構造函數的使用。
二、掌握什么是抽象、封裝和對象;Java中訪問控制符的作用;Java中的靜態修飾符、靜態字段、靜態方法。
三、了解Java中的抽象類、抽象方法和Final修飾符。
四、實踐教學要求:學會使用面向對象的程序設計方法來設計程序。【參考學時】12學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第5章 深入面向對象程序設計 第一節 繼承的概念 第二節 擴展類
一、繼承關系定義
二、類的繼承;屬性繼承與隱藏;方法繼承、覆蓋與重載 第三節 多態與動態綁定
一、多態、動態綁定
二、父類對象與子類對象的使用與轉化 第四節 構造函數的繼承與重載
一、構造函數的繼承和重載
二、構造函數的使用 第五節 包
一、包用途、創建包
二、包引用
三、Java API包 第六節 接口
一、接口概念
二、接口聲明、接口的實現 【基本要求】
一、熟練掌握類、方法的繼承;多態和重載。
二、掌握包的創建和引用;接口的定義和實現。
三、了解繼承的思想;包的用途。
四、實踐教學要求:在程序中使用繼承的思想來模塊化程序、簡化程序,學會包的使用
【參考學時】12學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第6章 異常處理
第一節 異常處理基礎
一、異常的類型
二、Java的內置異常、未被捕獲的異常 第二節 try和catch語句
一、try和catch的使用
二、使用多重catch語句、嵌套try語句 第三節 異常拋出
一、throw語句
二、throws語句 第四節 finally語句 第五節 自定義異常類 【基本要求】
一、熟練掌握try和catch語句的使用;自定義異常類的方法。
二、掌握異常處理的一般結構和異常的拋出方法。
三、了解Java的異常機制;Finally語句的作用。
四、實踐教學要求: 掌握在程序中添加異常的方法 【參考學時】8學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第7章 字符、字符串、數組
第一節 字符
一、Character類的構造函數
二、Character類提供的常用方法 第二節 字符串
一、字符串常量與String類
二、字符串變量與StringBuffer類 第三節 數組
一、數組的創建和初始化
二、數組的數組、復制數組、數組類Arrays 【基本要求】
一、熟練掌握String和StringBuffer類的對象創建以及常用的方法;數組的具體用 法。
二、掌握Character類的構造函數和方法。
三、了解數組的數組、復制數組、數組類Arrays。
四、實踐教學要求:掌握字符串變量與StringBuffer類在程序中的應用;掌握不同類型數組的應用
【參考學時】8學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第8章 Applet 第一節 Applet概述
一、Applet的類層次及框架結構
二、Applet的生命周期、主要方法
三、Applet和HTML、第二節 Applet的應用
一、Applet的執行
二、AWT繪制基礎、在Applet中輸出文字、在Applet中使用顏色、在Applet中繪制圖形
第三節 Applet的通信 【基本要求】
一、熟練掌握Applet中各種方法的使用。
二、掌握Applet的一些具體應用。
三、了解了解Applet的運行機制。
四、實踐教學要求:能夠使用Applet小程序在網頁中實現各種功能。【參考學時】8學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第9章 圖形用戶界面設計 第一節 GUI包 第二節 布局管理器
一、FlowLayout布局管理器、BorderLayout布局管理器、GridLayout布局管理器、CardLayout布局管理器、GridBagLayout布局管理器、swing布局管理器、Null布局管理器
第三節 事件處理
一、事件處理模型
二、事件處理方法
三、事件適配器 第四節 常用組件
一、常用容器組件:標簽(JLabel)、按鈕(JButton)、文本框、復選框-JCheckBox、單選按鈕-JRadioButton、列表框-JList、組合框-JComboBox、滑塊-JSlider菜單、對話框 【基本要求】
一、熟練掌握Java中事務處理的方法。
二、掌握布局管理器的使用常用組件的使用方法。
三、了解java.awt包和javax.swing包所包含的內容。
四、實踐教學要求:能夠熟練根據要求設計相應的圖形用戶界面。【參考學時】12學時 【參考資料】
1、印旻編著.Java與面向對象程序設計教程.北京:高等教育出版社
2、Ivor Horton編著.Java2編程指南.北京:電子工業出版社
3、鄧子云編著.JSP網絡編程從基礎到實踐(第2版).北京電子工業出版社
第五篇:JAVA程序設計課程總結
JAVA程序設計課程總結
專業:計算機科學與技術 學號: 姓名:
JAVA程序設計課程總結
經過一學期的java學習,我在老師的上課講解以及自己的課下學習中對java編程有了一定的了解,我深深喜歡上了這種語言。培養了我正確應用面向對象的思維方法分析問題和解決問題的能力。
學習的內容主要分為以下幾個部分:(1)java程序的編輯,編譯,運行環境
(2)java語言程序設計中最基本的問題,即標識符,關鍵字,數據類型,常量,變量,表達式,聲明語句,賦值語句,數據的輸入與輸出等。(3)流程控制語句,即分支語句,循環語句,轉移語句。
(4)控制研究對象復雜性的原則,即分類,抽象,封裝和繼承,多態等。(5)數組的定義。(6)高級GUI組件的應用。
其中我對類與繼承了解較多。一.類
在Java中,類文件是以.java為后綴的代碼文件,在每個類文件中最多只許出現一個public類,當有public類的時候,類文件的名稱必須和public類的名稱相同,若不存在public,澤類文件的名稱可以為任意的名稱,但不能是數字開頭的名稱。在類內部對于成員變量,如果在定義的時候沒有進行顯示的賦值初始化,則java會保證類的每個成員變量都得到恰當的初始化:
1)對于char、short、byte、int、long、float、double等基本數據類型的變量來說會默認初始化為0,bolean變量默認會被初始化為false; 2)對于引用類型的變量,會默認初始化為null。
3)如果沒有顯示地定義構造器,則編譯器會自動創建一個無參構造器,注意:如果顯示地定義了構造器,編譯器就不會自動添加構造器,所有的構造器默認為static的。
初始化順序為:當程序執行時,需要生成某個類的對象,Java執行引擎會先檢查是否加載了這個類,如果沒有加載,則先執行類的加載再生成對象,如果已經加載,則直接生成對象。在類的加載過程中,類的static成員變量會被初始化,另外,如果類中有static語句塊,則會執行static語句塊。static成員變量和static語句塊的執行順序同代碼中的順序一致。在Java中,類是按需加載,只有當需要用到這個類的時候,才會加載這個類,并且只會加載一次。例如:
運行這段代碼就會發現“歐陽”只會被打印一次。在生成對象的過程中,會先初始化對象的成員變量,然后再執行構造器。也就是說類中的變量會在任何方法調用之前得到初始化,即使變量散步于方法定義之間。
二.繼承
在java中使用extends關鍵字來表示繼承關系,當創建一個類時,總是在繼承,如果沒有明確指出要繼承的類,就總是隱式的從根類Object進行繼承。例如:
類Number繼承于Student類,Student類稱為父類(基類),Number類稱為子類(導出類)。如果兩個類存在繼承關系,則子類會自動繼承父類的方法和變量,在子類中可以調用父類的方法和變量。在java中,只允許單繼承,也就是說 一個類最多只能顯示地繼承于一個父類。但是一個類卻可以被多個類繼承,也就是說一個類可以擁有多個子類。1.子類繼承父類的成員變量
當子類繼承了某個類之后,便可以使用父類中的成員變量,但是并不是完全繼承父類的所有成員變量。具體的原則如下: 1)能夠繼承父類的public和protected成員變量;不能夠繼承父類的private成員變量; 2)對于父類的包訪問權限成員變量,如果子類和父類在同一個包下,則子類能夠繼承;否則,子類不能夠繼承; 3)對于子類可以繼承的父類成員變量,如果在子類中出現了同名稱的成員變量,則會發生隱藏現象,即子類的成員變量會屏蔽掉父類的同名成員變量。如果要在子類中訪問父類中同名成員變量,需要使用super關鍵字來進行引用。
2.子類繼承父類的方法
子類也并不是完全繼承父類的所有方法。1)能夠繼承父類的public和protected成員方法;不能夠繼承父類的private成員方法; 2)對于父類的包訪問權限成員方法,如果子類和父類在同一個包下,則子類能夠繼承;否則,子類不能夠繼承;
3)對于子類可以繼承的父類成員方法,如果在子類中出現了同名稱的成員方法,則稱為覆蓋,即子類的成員方法會覆蓋掉父類的同名成員方法。如果要在子類中訪問父類中同名成員方法,需要使用super關鍵字來進行引用。
注意:隱藏是針對成員變量和靜態方法的,而覆蓋是針對普通方法的。
3.構造器
子類是不能夠繼承父類的構造器,如果父類的構造器都是帶有參數的,則必須在子類的構造器中顯示地通過super關鍵字調用父類的構造器并配以適當的參數列表。如果父類有無參構造器,則在子類的構造器中用super關鍵字調用父類構造器不是必須的,如果沒有使用super關鍵字,系統會自動調用父類的無參構造器。例如:
這樣的代碼是沒有問題的,如果把父類的無參構造器去掉,則下面的代碼必然會出錯:
改成下面這樣就行了:
4.Super super主要有兩種用法: 1)2)super.成員變量/super.成員方法;super(parameter1,parameter2....)第一種用法主要用來在子類中調用父類的同名成員變量或者方法;第二種主要用在子類的構造器中顯示地調用父類的構造器,要注意的是,如果是用在子類構造器中,則必須是子類構造器的第一個語句。
以上就是我掌握較好的點,但是其中也有很多我沒有考慮到的地方。很感謝老師陪我度過了一個愉快的學期,老師的教學方法(即實例與理論結合)也是我所認可的,能接受的,相信我在以后的工作生活中會越來越好。