中文字幕永久免费视频最新|亚洲尹人九九大色香蕉网站|日本综合另类欧美日韩|亚洲国产欧美另类

          教管平臺

          《JAVA程序設計基礎》課程教學大綱

          發(fā)布者:發(fā)布時間:2010-07-27瀏覽次數(shù):1982

          總學時數(shù): 90(54/36) 學分:3 適用專業(yè):全校各本科專業(yè)

          •  課程的教學目標

          通過本課程的學習,幫助學生掌握面向?qū)ο蟮木幊淘O計思想,并能運用 Java技術(shù)和基本開發(fā)工具進行計算機軟件代碼設計。培養(yǎng)學生用新一代程序設計思想和邏輯思維方式進行計算機編程研究,啟發(fā)學生的創(chuàng)新意識,提高學生在軟件設計過程中分析問題和解決問題的實際動手能力,使學生的理論知識和實踐技能得到共同發(fā)展,從而為今后步入新世紀知識經(jīng)濟領(lǐng)域打下堅實基礎。

          •  課程的性質(zhì)、目的和任務

          本課程屬于教育部規(guī)定的非計算機專業(yè)計算機基礎教學的第二層次,即計算機(軟件)技術(shù)基礎。在修完“大學計算機基礎”課程后,使學生進一步掌握一門程序設計語言( Java語言),為全校學生必修課。

          Java語言是美國SUN公司1995年推出的面向?qū)ο蟮某绦蛟O計語言,該語言充分考慮了互聯(lián)網(wǎng)時代的特點,在設計上具有跨平臺性、面向?qū)ο?、安全等特性,因此一?jīng)推出就受到IT界的廣泛重視并大量采用,同時也成為教育界進行程序設計教學的一門重要編程語言。通過本門課程的學習可以使學生掌握Java語言的基本語法和編程規(guī)范;尤其是掌握用Java語言進行網(wǎng)絡編程的技巧;同時Java語言是一門面向?qū)ο蟮恼Z言,通過學習可以掌握用面向?qū)ο筮M行編程的思想和實踐,能夠根據(jù)實際需求編制出一些實用的程序。

          •  課程教學的基本要求

          1、熟練掌握Java語言的基本數(shù)據(jù)類型,運算符及表達式,控制結(jié)構(gòu),字符串的應用。

          2、學會運用面向?qū)ο缶幊烫攸c,使用抽象、封裝、繼承、多態(tài)編寫簡單的類和使用類對象編程。

          3、掌握Java語言基礎類、字符串類的應用。

          4、掌握異常的應用方法,進行異常處理設計。

          5、掌握線程的使用方法。

          6、掌握Java語言的I/O編程及應用方法。

          7、掌握Java圖形用戶界面設計方法及其編程。

          8、掌握Applet小應用程序的設計方法,設計小型網(wǎng)絡應用程序。

          9、掌握Application應用程序的設計方法,設計小型網(wǎng)絡應用程序。

          10、了解Java典型技術(shù)的原理和應用。

          11、了解Java服務器端的編程技術(shù)和分布式網(wǎng)絡應用系統(tǒng)的開發(fā)過程。

          12、進一步理解Web工作原理。

          •  課程教學內(nèi)容

          第 1章:Java語言概述(2學時)

          •  教學基本要求

          了解 Java語言的產(chǎn)生、應用前景和特點。

          掌握 Java語言和C++語言的異同點。

          掌握 Java的運行環(huán)境JDK和Java Applet程序、Java Application程序的編輯、編譯和運行過程。

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 了解 Java(1學時)

          •  Java的產(chǎn)生

          •  Java的特點

          •  Java的實現(xiàn)機制

          •  Java虛擬機

          •  垃圾回收機制

          •  代碼安全性檢測

          •  Java的發(fā)展

          第二節(jié) Java的運行環(huán)境JDK(1學時)

          •  JDK的安裝

          安裝 Java Develop Kit(JDK)

          安裝 java幫助文檔

          配置類路徑

          •  java application和java applet的編輯、編譯與運行

          •  教學重點和難點

          重點: java 語言的特點

          面向?qū)ο蟮木幊趟悸?

          難點: java 虛擬機

          •  小結(jié)

          1995年5月Sun公司正式發(fā)布Java的第一個辦公版本。Java語言被美國的著名雜志PCMagazine評為1995年十大優(yōu)秀科技產(chǎn)品。短短幾年間,隨著Internet的迅猛發(fā)展和WWW應用的快速增長,Java獲得迅速發(fā)展和壯大,已成為Intemet上的主流編程語言。近兩年Sun公司推出的J2ME、J2SE、J2EE三大平臺更體現(xiàn)了Java語言強大的應用能力,從高性能計算,到移動計算(手機通信)、智能卡,都無不體現(xiàn)著Java的存在。

          本章主要介紹 Java的特點、實現(xiàn)機制、核心技術(shù)以及運行環(huán)境JDK,使讀者對Java有個初步認識,為后續(xù)各章的學習做好準備。

          第 2章:Java語言基礎知識(6學時)

          •  教學基本要求

          掌握 Java語言各種數(shù)據(jù)類型的規(guī)定及其與C++語言在數(shù)據(jù)類型上的區(qū)別。

          熟練使用各種數(shù)據(jù)類型的定義,表示和引用。

          熟練掌握 Java 語言流程控制語句的功能及使用。

          能熟練處理字符串

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 標志符與關(guān)鍵字( 0.25學時)

          •  標識符:在 Java中,所有的標識符都必須以一個字母、下劃線或美元符號“$”開頭。后面可以包含字母、數(shù)字、下劃線和美元符號。

          •  關(guān)鍵字:關(guān)鍵字是 Java語言本身使用的標識符,它有其特定的語法含義。所有的Java關(guān)鍵字將不能被用作標識符,關(guān)鍵字用英文小寫字母表示。

          •  分隔符:分隔符是用來區(qū)分源程序中的基本成分,可使編譯器確認代碼在何處分隔。分隔符有注釋、空白符和普通分隔符三種。

          •  注釋

          第二節(jié) 基本數(shù)據(jù)類型( 0.5學時)

          Java的數(shù)據(jù)類型可分為簡單類型、引用類型。

          Java共定義了8種簡單類型。

          第三節(jié) 變量與常量( 0.25學時)

          •  常量:常量是指在程序中直接給出的一個符號串,作用是為變量賦值或參與表達式的運算。它可以是一個具體的數(shù)值或字符串 。

          •  變量:變量是程序中存儲單元的標識符表示,是內(nèi)存中的一塊空間,提供了可以存放信息和數(shù)據(jù)的地方,具有記憶數(shù)據(jù)的功能。通常用字母或單詞作為變量名 。

          第四節(jié) 運算符與表達式( 1學時)

          •  運算符: Java的運算符代表著特定的運算指令,程序運行時將對運算符連接的操作數(shù)進行相應的運算。

          •  Java提供了十分豐富的運算符,Java的運算符主要分為4類:算術(shù)運算符、位運算符、關(guān)系運算符和布爾運算符。

          •  表達式:表達式是算法語言的基本組成部分,它表示一種求值規(guī)則,通常由操作數(shù)、運算符和圓括號組成。操作數(shù)是參加運算的數(shù)據(jù),可以是常量、常數(shù)、變量或成員方法引用。表達式中出現(xiàn)的變量名必須已經(jīng)被初始化。

          第五節(jié) 流程控制( 2學時)

          按程序的執(zhí)行流程,程序的控制結(jié)構(gòu)可分為 3種:

          •  順序結(jié)構(gòu):一般情況下,程序按語句的書寫次序依次順序執(zhí)行,順序結(jié)構(gòu)是最簡單的一種基本結(jié)構(gòu)。

          •  分支結(jié)構(gòu): Java有兩種分支語句實現(xiàn)分支結(jié)構(gòu),if語句實現(xiàn)二路分支,swicth語句實現(xiàn)多路分支。

          •  循環(huán)結(jié)構(gòu):

          1)for語句

          2)while語句

          3)do-while語句

          第六節(jié) 數(shù)組( 1學時)

          •  數(shù)組是有序數(shù)據(jù)的集合,數(shù)組中的每個元素具有相同的數(shù)組名,根據(jù)數(shù)組名和下標來唯一地確定數(shù)組中的元素。

          •  數(shù)組的使用:數(shù)組有一維數(shù)組和多維數(shù)組,使用時要先聲明后創(chuàng)建。

          第七節(jié) 字符串( 1學時)

          •  聲明字符串變量

          •  字符串運算

          •  String類的常用方法

          •  教學重點和難點

          重點:各種數(shù)據(jù)類型的定義,表示和引用

          各種控制語句

          字符串的使用

          難點:動態(tài)初始化復雜類型數(shù)組

          使用 StringBuffer類表示和操作字符串

          •  小結(jié)

          Java從C++繼承了大量的語言成份,如運算符、控制結(jié)構(gòu)等。

          本章介紹 Java語言的基礎知識,包括標識符與關(guān)鍵字、運算符、表達式、變量聲明,實現(xiàn)程序控制結(jié)構(gòu)的語句,以及數(shù)組和字符串。

          第 3章:面向?qū)ο蠹夹g(shù)(8學時)

          •  教學基本要求

          掌握類的定義,類的繼承,及相關(guān)語法規(guī)則,掌握對類成員的使用,理解類的封裝。

          理解方法重載和方法重寫。

          理解面向?qū)ο蟮奶匦浴?

          了解面向?qū)ο蟮能浖_發(fā)過程。

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 類與對象( 0.5學時)

          •  類( Class)是一種復雜的數(shù)據(jù)類型,它是將數(shù)據(jù)和與數(shù)據(jù)相關(guān)的操作封裝在一起的集合體。類是普通數(shù)據(jù)類型的擴展,它不但包含數(shù)據(jù),還包含了對數(shù)據(jù)進行操作的方法(method)。方法反映的是數(shù)據(jù)的行為而不是數(shù)據(jù)本身。

          •  對象 ( Object)是類的實例,它是類的變量。當程序運行時,對象占用內(nèi)存單元。對象與類的關(guān)系就像變量與類型的關(guān)系一樣。類與對象是密切相關(guān)的,沒有脫離對象的類,也沒有不依賴于類的對象。

          •  Java 中的所有數(shù)據(jù)類型都是用類來實現(xiàn)的,Java語言是建立在類這個邏輯結(jié)構(gòu)之上,所以Java 是一種完全面向?qū)ο蟮某绦蛟O計語言,類是Java的核心。

          •  類中的數(shù)據(jù)稱為成員變量。有時也稱為屬性、數(shù)據(jù)、域。對成員變量的操作實際上就是改變對象的狀態(tài),使之能滿足程序的需要。成員變量也有很多修飾符,用來控制對成員變量的訪問。

          第二節(jié) 類的創(chuàng)建( 0.5學時)

          •  類的聲明

          •  類主體

          第三節(jié) 對象的創(chuàng)建( 1學時)

          •  創(chuàng)建對象

          •  對象的使用

          •  對象的初始化

          1)系統(tǒng)對變量的初始化

          2)構(gòu)造方法

          •  對象的銷毀

          第四節(jié) 類的封裝( 2學時)

          •  Java中通過設置類的訪問權(quán)限和類中成員的訪問權(quán)限,來實現(xiàn)封裝的特性。

          •  Java定義了4種訪問權(quán)限:公有的、保護的、默認的和私有的。

          •  實例成員和類成員

          第五節(jié) 類的繼承( 2學時)

          •  新類從現(xiàn)有的類中產(chǎn)生,保留了現(xiàn)有類的屬性和方法并根據(jù)需要加以修改。當你建立一個新類時,不必寫出全部成員變量和成員方法。只要簡單地聲明這個類是從一個已定義的類繼承下來的,就可以使用被繼承類的全部成員。被繼承的類稱為父類或超類,這個新類就是子類。

          •  創(chuàng)建子類

          •  this引用、super引用和instanceof對象運算符

          •  最終類和抽象類

          第六節(jié) 類的多態(tài)性( 2學時)

          •  所謂多態(tài)( polymorphism),是指一個名字可具有多種語義。在面向?qū)ο笳Z言中,多態(tài)是指一個方法可能有多種版本,一次單獨的方法調(diào)用(invoke)可能是這些版本中的任何一種,即實現(xiàn)“一個接口,多個方法”。

          •  方法的重載

          •  方法的覆蓋

          •  教學重點和難點

          重點:類和對象的概念

          面向?qū)ο蟮木幊趟悸?

          難點: 理解方法重載和方法重寫,不要混淆了兩者的使用

          類變量和類方法的使用

          •  小結(jié)

          面向?qū)ο蠹夹g(shù)是一種基于對象概念的軟件開發(fā)方法, Windows平臺上的高級編程語言大多支持面向?qū)ο蟪绦蛟O計(Object Oriented Programming,OOP)。

          Java是一種完全面向?qū)ο蟮某绦蛟O計語言,它的所有數(shù)據(jù)類型和函數(shù)都封裝在類中。Java在繼承C++優(yōu)秀特性的同時,放棄了那些模糊、復雜、容易出錯的特性以及影響程序健壯性的部分。Java所實現(xiàn)的封裝、繼承、多態(tài)性等面向?qū)ο蟮膶傩?,降低了程序的復雜性,實現(xiàn)了代碼的可重用性,提高了運行效率,使Java不依賴于機器的結(jié)構(gòu),具有平臺無關(guān)性、分布式、可移植性、可重用性、健壯性、安全性等特點。

          本章首先介紹類與對象的基本概念、類的聲明、對象的創(chuàng)建和使用,然后介紹如何實現(xiàn)面向?qū)ο蟮娜齻€核心特性:類的封裝、繼承和多態(tài)性。

          第 4章:Java類和對象的高級特征(5學時)

          •  教學基本要求

          掌握 Java接口的定義和實現(xiàn)。

          掌握 Java內(nèi)部類。

          了解系統(tǒng)定義的類 (包) 。

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 接口( 1學時)

          •  接口是抽象類的一種,只包含常量和方法的定義,而沒有變量和方法的實現(xiàn),且其方法都是抽象方法。

          •  定義接口

          接口是沒有實現(xiàn)的方法和變量的集合。接口的定義與類的定義相似。

          •  實現(xiàn)接口

          接口的實現(xiàn)類似于繼承,只是不用 extends,而是用關(guān)鍵字implement聲明一個類將實現(xiàn)一個接口,其聲明格式如下:

          [〈修飾符〉]class〈類名〉[extends〈超類名〉][implements〈接口名1〉,〈接口名2〉,……]

          第二節(jié) 內(nèi)部類( 2學時)

          •  內(nèi)部類是在一個類的內(nèi)部嵌套定義的類,它可以是其它類的成員,也可以在一個語句塊的內(nèi)部定義,還可以在表達式內(nèi)部匿名定義。

          •  內(nèi)部類有如下特性:

          1) 一般用在定義它的類或語句塊之內(nèi),在外部引用它時必須給出完整的名稱。名字不能與包含它的類名相同。

          2) 可以使用包含它的類的靜態(tài)和實例成員變量,也可以使用它所在方法的局部變量。

          3) 可以定義為 abstract。

          4) 可以聲明為 private或protected。

          5) 若被聲明為 static,就變成了頂層類,不能再使用局部變量。

          6) 若想在 Inner Class中聲明任何static成員,則該Inner Class必須聲明為static。

          •  內(nèi)部類的優(yōu)缺點:

          優(yōu)點 :節(jié)省編譯后產(chǎn)生的字節(jié)碼文件的大小

          缺點 :使程序結(jié)構(gòu)不清楚

          第三節(jié) 包( 2學時)

          •  包( package)是Java提供的一種區(qū)別類名空間的機制,是類的組織方式,包對應一個文件夾,包中還可以再有包,稱為包等級。

          •  Java的API介紹

          Java的常用包有:

          Java.lang 語言包

          Java.util 使用包

          Java.awt 抽象窗口工具包

          Java.text 文本包

          Java.io 輸入輸出流的文件包

          Java.applet Applet應用程序

          Java.net 網(wǎng)絡功能

          •  引用 Java定義的包

          •  自定義包

          •  教學重點和難點

          重點:接口和包的使用

          難點:通過 package 、 import 語句和設置環(huán)境變量 Classpath 訪問其它包中的類

          •  小結(jié)

          為使程序更適應網(wǎng)絡傳輸,提高運行效率,增加安全性,降低程序復雜性, Java采用的是盡可能簡單的面向?qū)ο髾C制。最明顯的特點就是,它只支持單重繼承,而不支持C++等語言中的多重繼承。但Java引入了接口概念,接口和單重繼承的結(jié)合可以實現(xiàn)多重繼承的功能。

          本章進一步討論 Java面向?qū)ο蟮膶崿F(xiàn)機制,包括接口、內(nèi)部類和包。

          第 5章:異常處理(3學時)

          •  教學基本要求

          掌握異常的概念和 Java異常處理的機制。

          掌握 Java異常類的產(chǎn)生、捕獲與處理方法。

          了解 Java 異常類的繼承和派生關(guān)系。

          掌握自定義異常類。

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) Java異常處理的基礎知識(0.5學時)

          •  錯誤與異常

          在程序運行時經(jīng)常會出現(xiàn)一些非正常的現(xiàn)象,如死循環(huán)、非正常退出等,稱為運行錯誤。根據(jù)錯誤性質(zhì)運行錯誤分為兩類:錯誤和異常。

          •  異常處理機制

          Java提供了異常處理機制,它是通過面向?qū)ο蟮姆椒▉硖幚懋惓5摹?

          1)拋出異常

          2)捕獲異常

          3)異常處理的類層次

          第二節(jié) 異常類的產(chǎn)生、捕獲與處理( 1學時)

          •  異常的產(chǎn)生

          •  使用 try-catch-finally語句捕獲和處理異常

          •  Exception 異常類的方法

          第三節(jié) 異常的分類( 0.5學時)

          •  異常類層次圖

          程序?qū)﹀e誤與異常的三種處理方式:

          1) 程序不能處理的錯誤

          2) 程序應避免而不捕獲的異常

          3) 必須捕獲的異常

          •  常見的公用異常類

          1) 算術(shù)異常類ArithmeticException

          2) 空指針異常NullPointerException

          3) 類型強制轉(zhuǎn)換異常ClassCastException

          第四節(jié) 拋出異常( 0.5學時)

          •  使用 throw語句拋出異常

          •  拋出異常的方法與調(diào)用方法處理異常

          •  由方法拋出異常交系統(tǒng)處理

          第五節(jié) 自定義異常類( 0.5學時)

          雖然 Java已經(jīng)預定了很多異常類,但有的情況下,程序員不僅需要自己拋出異常,還要創(chuàng)建自己的異常類,這時可以通過創(chuàng)建Exception的子類來定義自己的異常類。

          •  教學重點和難點

          重點:在編寫程序時,要正確地使用捕獲例外和聲明拋棄例外的兩種例外處理的方法

          難點:如何使用 Java中兩種例外處理機制,拋棄例外和聲明拋棄例外的區(qū)別與聯(lián)系

          •  小結(jié)

          本章討論了 Java的異常處理機制,并學習如何合理應用異常處理機制,從而使我們編寫的Java程序具有穩(wěn)定性和可靠性。

          第 6章:圖形界面設計(10學時)

          •  教學基本要求

          掌握事件源、事件、事件處理者等概念,讓程序能夠響應用戶的操作。

          掌握 Java 的 GUI 設計技術(shù)。

          掌握用 AWT來設計圖形用戶界面的方法,尤其是組件、容器、布局管理器等概念。了解AWT各個組件的用法及所采用的事件處理接口。

          掌握 Swing的基本用法,了解其常用組件和容器的使用方法及功能,知道其布局管理器和事件處理與AWT處理上的區(qū)別,了解其輔助特性。

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 用 AWT 生成圖形化用戶界面(2學時)

          •  java.awt 包

          •  組件和容器

          •  常用容器

          •  布局管理器

          第二節(jié) AWT事件處理模型(2學時)

          當 JAVA程序運行時,如果用戶在界面上進行某種操作,系統(tǒng)捕獲這些操作回產(chǎn)生相應的 事件 (event),然后將執(zhí)行相應的 事件處理程序

          事件的來源 是用戶的操作,如敲擊鍵盤、單擊鼠標、雙擊鼠標等。當用戶在 AWT組件上進行操作時,AWT事件處理系統(tǒng)就會產(chǎn)生一個相應的事件對象。事件對象描述的是用戶所執(zhí)行的操作,用戶操作不同,事件對象的內(nèi)容也不同

          事件的處理 由事件處理程序完成。

          事件處理模型 ,指事件產(chǎn)生后事件對象的傳遞準則。 JAVA的事件處理模型有兩種:JDK1.0和JDK1.1

          •  事件類

          •  事件監(jiān)聽器

          •  AWT 事件及其相應的監(jiān)聽器接口

          •  事件適配器

          第三節(jié) AWT組件庫(2學時)

          第四節(jié) Swing簡介(2學時)

          •  簡介

          •  Swing 的類層次結(jié)構(gòu)

          •  Swing 組件的多樣化

          •  MVC(Model-View-Control) 體系結(jié)構(gòu)

          •  可存取性支持

          •  支持鍵盤操作

          •  設置邊框

          •  使用圖標( Icon )

          •  Swing 程序結(jié)構(gòu)簡介

          第五節(jié) Swing組件和容器(2學時)

          •  組件的分類

          •  使用 Swing 的基本規(guī)則

          •  各種容器面板和組件

          •  布局管理器

          •  教學重點和難點

          重點:事件處理模型

          Swing的新增特性

          難點:內(nèi)部類匿名類在 AWT中的應用

          Swing新的容器模型以及眾多的組件的使用方法

          •  小結(jié)

          本章介紹如何使用 Java組件設計圖形界面程序,內(nèi)容包括:創(chuàng)建框架,設置界面布局,使用按鈕、文本編輯框、復選框、選擇框、列表框、對話框等常用組件,使用菜單及彈出式菜單,以及在組件上繪圖等。

          通過使用組件制作 Windows窗口,掌握Java圖形界面的設計方式,理解委托事件監(jiān)聽程序?qū)κ录奶幚頇C制。

          第 7章:多線程機制(5學時)

          •  教學基本要求

          掌握線程的調(diào)度和控制方法,清楚地理解多線程的互斥和同步的實現(xiàn)原理,以及多線程的應用。

          •  要求學生掌握的基本概念、理論、原理

          •  線程的概念( 0.5學時)

          •  程序、進程和多任務

          程序 ( program)是對數(shù)據(jù)描述與操作的代碼的集合,是應用程序執(zhí)行的腳本。

          進程 ( process)是程序的一次執(zhí)行過程,是系統(tǒng)運行程序的基本單位。

          多任務 ( multitask)是指在一個系統(tǒng)中可以同時運行多個程序,即有多個獨立運行的任務,每個任務對應一個進程。

          •  線程

          線程與進程相似,是一段完成某個特定功能的代碼,是程序中單個順序的流控制;但與進程不同的是,同類的多個線程是共享一塊內(nèi)存空間和一組系統(tǒng)資源,而線程本身的數(shù)據(jù)通常只有微處理器的寄存器數(shù)據(jù),以及一個供程序執(zhí)行時使用的堆棧。所以系統(tǒng)在產(chǎn)生一個線程,或者在各個線程之間切換時,負擔要比進程小的多,正因如此,線程被稱為輕負荷進程( light-weight process)。一個進程中可以包含多個線程。

          •  線程的生命周期與線程的狀態(tài)

          第二節(jié) Runnable接口與Thread類(0.5學時)

          •  Runnable 接口

          •  Thread 類

          •  兩種創(chuàng)建線程方法的比較

          •  線程組

          第三節(jié) 線程的控制與調(diào)度( 2學時)

          •  線程的生命周期

          1)創(chuàng)建狀態(tài)

          2)可運行狀態(tài)

          3)運行中狀態(tài)

          4)阻塞狀態(tài)

          5)死亡狀態(tài)

          •  線程調(diào)度與優(yōu)先級

          •  改變線程狀態(tài)

          1)線程睡眠sleep( )

          2)暫停線程 yield( )

          3)連接線程join()

          4)中斷線程interrupt()

          第四節(jié) 線程的同步機制( 2學時)

          前面所提到的線程都是獨立的,而且異步執(zhí)行,也就是說每個線程都包含了運行時所需要的數(shù)據(jù)或方法,而不需要外部的資源或方法,也不必關(guān)心其它線程的狀態(tài)或行為。但是經(jīng)常有一些同時運行的線程需要共享數(shù)據(jù),此時就需考慮其他線程的狀態(tài)和行為,否則就不能保證程序的運行結(jié)果的正確性。

          •  共享數(shù)據(jù)的線程“互斥“鎖定

          1)線程間的數(shù)據(jù)共享

          2)Synchronized

          •  傳送數(shù)據(jù)的線程同步運行

          1)線程間傳送數(shù)據(jù)

          2)synchronized與“互斥鎖”標志

          3)在線程之間通信

          •  死鎖問題

          Java技術(shù)即不能發(fā)現(xiàn)死鎖也不能避免死鎖。所以程序員編程時應注意死鎖問題,盡量避免。避免死鎖的有效方法是:

          1)線程因為某個條件未滿足而受阻,不能讓其繼續(xù)占有資源

          2)如果有多個對象需要互斥訪問,應確定線程獲得鎖的順序,并保證整個程序以相反的順序釋放鎖

          •  教學重點和難點

          重點: 多線程的調(diào)度和控制

          難點:多線程的互斥和同步

          •  小結(jié)

          Java的特點就是內(nèi)在支持多線程,它的所有類都是在多線程的思路下定義的。

          本章介紹了 Java的多線程機制,包括線程概念、線程的生命周期、線程的控制與調(diào)度、線程同步等問題。

          第 8章:輸入輸出流(5學時)

          •  教學基本要求

          掌握數(shù)據(jù)流的概念。

          掌握字符流、字節(jié)流的操作。

          掌握文件操作方法

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 數(shù)據(jù)流的基本概念( 1學時)

          •  理解數(shù)據(jù)流

          •  Java的標準數(shù)據(jù)流

          標準輸入輸出指在字符方式下(如 DOS),程序與系統(tǒng)進行交互的方式,分為三種:

          1)標準輸入studin,對象是鍵盤。

          2)標準輸出stdout,對象是屏幕。

          3)標準錯誤輸出stderr,對象也是屏幕。

          •  Java.io包中的數(shù)據(jù)流及文件類

          1)字節(jié)流InputStream和OutputStream

          2)字符流Reader和Writer

          3)文件類File和RandomAccessFile

          第二節(jié) 字節(jié)流初步( 1學時)

          •  InputStream 和OutputStream 類

          •  文件字節(jié)輸入流類 FileInputStream

          •  文件字節(jié)輸出流類 FileOutputStream

          第三節(jié) 文件操作( 1學時)

          •  File類

          •  文件過濾器

          •  文件對話框

          •  隨機文件操作

          第四節(jié) 字符流( 1學時)

          •  Reader類和Writer類

          •  字符文件流 FileReader和FileWriter類

          •  字符緩沖流 BufferedReader和BufferedWriter類

          第五節(jié) 字節(jié)流的高級應用( 1學時)

          •  管道流

          •  數(shù)據(jù)流

          •  對象流

          •  教學重點和難點

          重點: 遇到實際問題時,要根據(jù)需要正確使用各種輸入/輸出流,特別是對中文使用適當?shù)淖址斎肓鳌?

          難點:處理字符流時,其構(gòu)造方法的參數(shù)是一個字節(jié)流。

          對象串行化的概念

          •  小結(jié)

          所有程序都離不開輸入和輸出。在面向?qū)ο蟮恼Z言中,輸入輸出都是通過數(shù)據(jù)流來實現(xiàn)的。

          本章介紹了 Java數(shù)據(jù)流的概念及應用,包括字節(jié)流、字符流及文件操作。

          第 9章:Applet應用程序(4學時)

          •  教學基本要求

          掌握 Apple的編程技巧與運行環(huán)境

          掌握在 HTML文件中嵌入Applet程序的方法

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) Applet特點(0.5學時)

          •  Applet 需要嵌入瀏覽器運行

          •  Applet 的安全性

          第二節(jié) Applet類(2學時)

          Applet類是一個特殊的圖形類,在java.applet包中。Applet類是Panel的一個子類,因此它具備Panel的特性,而與Panel不同的是,Applet類是一個可以運行的類,所以創(chuàng)建一個Applet子類就可以運行一個Applet應用程序。

          •  Applet的創(chuàng)建

          •  Applet的生命周期

          1)init( )

          2)start( )

          3)stop( )

          4)destroy( )

          •  Applet的顯示與刷新

          1)自動執(zhí)行paint方法繪圖

          2)調(diào)用repaint方法重新繪圖

          第三節(jié) HTML和Applet(0.5學時)

          •  超文本標記語言

          •  HTML中嵌入Applet

          第四節(jié) Applet應用(1學時)

          •  標識網(wǎng)絡上的資源

          •  顯示圖像

          •  播放聲音

          •  教學重點和難點

          重點: Applet和 Application的區(qū)別

          難點: Applet的生命周期

          •  小結(jié)

          Java的應用程序分為兩大類:獨立應用程序和Applet應用程序。在前幾章中所設計的程序稱為獨立應用程序,它們可以獨立運行。

          Applet應用程序,又稱為小應用程序,是嵌入到瀏覽器中的程序。它不能獨立運行,必須嵌入到瀏覽器中運行。正是由于Applet應用程序的特點,使得Web頁面豐富,具有動感,充滿活力,從而也使Java能夠隨著Internet的發(fā)展而逐步成長壯大,成為當今網(wǎng)絡編程的主流語言。

          本章介紹了 Applet應用程序的運行方式、生命周期等特征,顯示圖形圖像與播放聲音的方法,使用線程制作動態(tài)圖形、顯示動態(tài)圖像。

          第 10章:網(wǎng)絡通信(6學時)

          •  教學基本要求

          理解計算機網(wǎng)絡編程的概念

          理解和掌握在 Java中用URL訪問網(wǎng)絡資源的方法

          理解和掌握 Socket通信機制

          •  要求學生掌握的基本概念、理論、原理

          第一節(jié) 網(wǎng)絡運行機制( 2學時)

          Java用于網(wǎng)絡操作的功能包是java.net,它包含了多個訪問各種標準網(wǎng)絡協(xié)議的類庫。Java的網(wǎng)絡訪問類庫分別支持以下三個層次的網(wǎng)絡運行機制。

          •  使用 URL訪問網(wǎng)絡資源

          Java支持URL訪問網(wǎng)絡資源的機制,通過URL標識,可以直接使用http、file、ftp等多種協(xié)議,以獲取遠程計算機上的資源信息,方便快捷地開發(fā)internet應用程序。

          •  Socket

          Java提供對應于Socket機制的一組類,按照用戶約定的通信協(xié)議,實現(xiàn)網(wǎng)絡通信。這種方式更適合開發(fā)特定功能的網(wǎng)絡通信程序。

          •  Datagram

          第二節(jié) 使用 URL訪問網(wǎng)絡資源(2學時)

          •  什么是 URL

          •  URL類

          •  針對 HTTP協(xié)議的URLConnection類

          •  Socket通信機制(2學時)

          •  Socket通信機制的基本概念

          •  實現(xiàn) Socket通信

          •  教學重點和難點

          重點: URL,Socket通信的實現(xiàn)

          難點:基于 TCP的C/S網(wǎng)絡編程

          基于 UDP的C/S網(wǎng)絡編程

          •  小結(jié)

          Java是以網(wǎng)絡語言著稱的,它的網(wǎng)絡功能十分完善,如獲取網(wǎng)絡上的各種資源、與其他機器進行實時通信、進行網(wǎng)絡文件傳輸?shù)取?

          Java提供了多種網(wǎng)絡訪問類庫,能夠支持URL、Socket、Datagram等三個層次的網(wǎng)絡運行機制。

          本章介紹 URL和Socket的運行機制與網(wǎng)絡功能的實現(xiàn)。

          •  本課程和其他課程的關(guān)系

          預修課程: C程序設計、計算機文化基礎。

          •  教學時數(shù)分配

          章次

          各章標題名稱

          講授學時

          實驗學時

          輔導學時

          備注

          第 1章

          Java語言概述

          2

          2

          第 2章

          Java語言基礎知識

          6

          5

          第 3章

          面向?qū)ο蠹夹g(shù)

          8

          5

          2

          第 4章

          Java類和對象的高級特征

          5

          4

          1

          第 5章

          異常處理

          3

          第 6章

          圖形界面設計

          10

          8

          2

          第 7章

          多線程機制

          5

          第 8章

          輸入輸出流

          5

          4

          第 9章

          Applet應用程序

          4

          6

          第 10章

          網(wǎng)絡通信

          6

          2

          •  實驗內(nèi)容與學時分配

          序號

          實驗項目名稱

          學時

          實驗類型(驗證、綜合、設計)

          是否為開放實驗

          備注

          1

          安裝與熟悉 Java開發(fā)工具

          2

          驗證

          2

          Java語言基礎

          5

          驗證

          3

          面向?qū)ο蠹夹g(shù)

          5

          驗證

          4

          Java類和對象的高級特征

          4

          驗證

          5

          圖形界面設計

          8

          設計

          6

          輸入輸出流

          4

          驗證

          7

          Applet應用程序

          6

          綜合

          8

          網(wǎng)絡通信

          2

          驗證

          •  教材及參考書

          教材:

          Java 2 程序設計實用教程,葉核亞、陳立編著,電子工業(yè)出版社

          主要參考書:

          1、Java編程思想,Bruce Eckel著,陳昊鵬,饒若楠等譯,機械工業(yè)出版社

          2、 Java 大學實用教程,耿祥義編著,電子工業(yè)出版社

          3、Java 2參考大全(第五版),Herbert Schildt著,周志彬譯,電子工業(yè)出版社

          •  主要教學方法和媒體要求

          理論課程在多媒體教室中全程采用課件教學,上課時邊講邊演示。實踐課程部分以作業(yè)的形式布置給同學們,要求在上機課或課余時間完成。另一部分采用案例式教學,由教師帶領(lǐng)學生們對實際問題進行分析,進而根據(jù)所學知識找到最佳的解決方法。

          •  推薦的教學網(wǎng)站和相關(guān)專業(yè)文獻網(wǎng)站

          1、 http://java.sun.com/ (英文)

          2、 http://www-900.ibm.com/developerWorks/cn/

          3、 http://www.javaworld.com/ (英文)

          4、 http://www.theserverside.com/home/ (英文)

          5、 http://www.javaresearch.org/

          制 訂:計算機公修教研室

          執(zhí)筆人:岳冬利

          審定人:鄒健

          返回原圖
          /

          ?