




已閱讀5頁(yè),還剩73頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JAVA程序設(shè)計(jì) 教案 一 HPUCST吳正江配套教材 張化祥 JAVA語(yǔ)言基礎(chǔ)教程 清華大學(xué)出版社2007 第1章 WelcomeJava 1 幾點(diǎn)要求2 Java的歷史與語(yǔ)言結(jié)構(gòu)3 Java的安裝4 Java語(yǔ)言基礎(chǔ) 本節(jié)課內(nèi)容 1 請(qǐng)假以憑證為準(zhǔn) 無(wú)憑證視為缺勤2 上課需要保持安靜3 課程內(nèi)容較多 下面自己做練習(xí)4 平時(shí)分以實(shí)驗(yàn)及點(diǎn)名為準(zhǔn) 占40 1 1課堂要求 編程是一門(mén)技術(shù) 需要多實(shí)踐 編程是一門(mén)功夫 需要勤練內(nèi)功 注重代碼編寫(xiě)規(guī)范 注重相互交流 充分利用網(wǎng)絡(luò)資源輔助學(xué)習(xí) 在實(shí)踐中體會(huì)面向?qū)ο缶幊趟枷?1 2課程學(xué)習(xí)的幾個(gè)要求 J2SE1 Java基本語(yǔ)法2 Java中面向?qū)ο蠡A(chǔ)知識(shí)3 異常4 數(shù)組與容器5 I O6 多線(xiàn)程7 網(wǎng)絡(luò)編程8 GUI編程 1 3本門(mén)課程主要內(nèi)容 1 JDBC2 JavaWEB3 Servlet JSP4 Struts25 Hibernate Spring AJAX6 1 4本門(mén)課程后續(xù) 企業(yè)級(jí)應(yīng)用 J2EESSH StrutsSpringHibernate MySQL SQLServer2005 Oracle嵌入設(shè)備應(yīng)用 J2ME Anroid手機(jī)開(kāi)發(fā)嵌入式 1 5Java主要方向 計(jì)算機(jī)語(yǔ)言的發(fā)展機(jī)器語(yǔ)言 CPU本身所使用的語(yǔ)言 優(yōu)點(diǎn) 可以直接被CPU使用 表達(dá)準(zhǔn)確 運(yùn)行速度非???缺點(diǎn) 難于編寫(xiě) 閱讀和理解 形式 010111100匯編語(yǔ)言 用符號(hào)代替了機(jī)器指令代碼 采用了助記符號(hào)來(lái)編寫(xiě)程序 優(yōu)點(diǎn) 使程序內(nèi)容變得清楚 易于理解 缺點(diǎn) 編寫(xiě)過(guò)程繁瑣且耗時(shí)長(zhǎng) 所以它很難普及 形式 MOVAX 0010B 1 6 1Java的歷史 高級(jí)語(yǔ)言 與計(jì)算機(jī)的硬件結(jié)構(gòu)及指令系統(tǒng)無(wú)關(guān)高級(jí)語(yǔ)言使每一條語(yǔ)句的功能大大加強(qiáng) 同時(shí)又保持了易寫(xiě) 易讀和易于理解的特性 Java就是一種高級(jí)語(yǔ)言 形式 if a b max a 對(duì)于計(jì)算機(jī)的CPU來(lái)說(shuō) 高級(jí)語(yǔ)言太籠統(tǒng)了 它需要一個(gè)功能強(qiáng)大的翻譯器來(lái)幫助理解 翻譯器有兩種 一種是編譯器 另一種是解譯器 它們的作用都是將我們用高級(jí)語(yǔ)言寫(xiě)好的程序翻譯成計(jì)算機(jī)能理解的機(jī)器語(yǔ)言 所不同的是翻譯的方式 1 6 1Java的歷史 編譯型語(yǔ)言C C 源代碼經(jīng)編譯后產(chǎn)生目標(biāo)代碼 即對(duì)應(yīng)于特定平臺(tái)的機(jī)器碼 是平臺(tái)相關(guān)的 可移植性不強(qiáng) 解釋型語(yǔ)言Perl Basic 將源代碼逐行讀入并執(zhí)行的 是可跨平臺(tái)的 可移植性強(qiáng) 一個(gè)問(wèn)題 Java屬于哪一類(lèi) 1 6 1Java的歷史 Java的發(fā)展簡(jiǎn)史1991年 Java語(yǔ)言誕生在SUN公司 它是由JamesGosling領(lǐng)導(dǎo)的GreenProject小組開(kāi)發(fā)的 它最初的名字是Oak 1994年 GreenProject小組將他們的開(kāi)發(fā)轉(zhuǎn)向了Internet 用Oak編寫(xiě)了一系列網(wǎng)絡(luò)應(yīng)用程序 像網(wǎng)絡(luò)瀏覽器WebRunner等 1995年 隨著Java語(yǔ)言在互聯(lián)網(wǎng)和多媒體上的發(fā)展 它得到了全球計(jì)算機(jī)業(yè)的高度重視 SUN公司將1 2及其以后版本命名為 Java2 目前 Java語(yǔ)言的正式版本已經(jīng)發(fā)展到1 7版 1 6 1Java的歷史 有關(guān)Java的幾張圖片 Java的標(biāo)識(shí) Java之父JamesGosling Java的吉祥物Duke 結(jié)構(gòu)簡(jiǎn)單 Java語(yǔ)言的程序構(gòu)成與C語(yǔ)言和C 語(yǔ)言類(lèi)似 摒棄了C語(yǔ)言和C 語(yǔ)言的復(fù)雜 不安全特性 例如 指針的操作和內(nèi)存的管理 此外 Java語(yǔ)言提供了種類(lèi)豐富 功能強(qiáng)大的類(lèi)庫(kù) 提高了編程效率 面向?qū)ο?現(xiàn)實(shí)世界中的任何物體都可以看作是1個(gè)對(duì)象 對(duì)象有狀態(tài)和行為兩大特征 Java不是以過(guò)程為中心來(lái)編程 而是以對(duì)象為中心 通過(guò)對(duì)象之間的調(diào)用來(lái)解決問(wèn)題 平臺(tái)無(wú)關(guān) 使用Java語(yǔ)言編寫(xiě)的應(yīng)用程序不需要進(jìn)行任何修改 就可以在不同的軟 硬件平臺(tái)上運(yùn)行 這主要是通過(guò)Java虛擬器 JVM 來(lái)實(shí)現(xiàn)的 1 6 2Java語(yǔ)言特點(diǎn) 可靠性 因?yàn)镴ava最初設(shè)計(jì)目的是應(yīng)用于電子類(lèi)家庭消費(fèi)產(chǎn)品 所以要求較高的可靠性 例如 Java語(yǔ)言提供了異常處理機(jī)制 有效地避免了因程序編寫(xiě)錯(cuò)誤而導(dǎo)致的死機(jī)現(xiàn)象 安全性 現(xiàn)今的Java語(yǔ)言主要用于網(wǎng)絡(luò)應(yīng)用程序的開(kāi)發(fā) 因此對(duì)安全性有很高的要求 多線(xiàn)程 多線(xiàn)程是指在一個(gè)程序中可以同時(shí)執(zhí)行多個(gè)簡(jiǎn)單任務(wù) 線(xiàn)程也被稱(chēng)為輕量進(jìn)程 是一個(gè)傳統(tǒng)大進(jìn)程里分出來(lái)的獨(dú)立的可并發(fā)執(zhí)行的單位 C語(yǔ)言和C 語(yǔ)言采用單線(xiàn)程體系結(jié)構(gòu) 而Java語(yǔ)言支持多線(xiàn)程技術(shù) 1 6 2Java語(yǔ)言特點(diǎn) J2SE JavaPlatform2StandardEdition Java2標(biāo)準(zhǔn)版 java系統(tǒng)的標(biāo)準(zhǔn)與核心平臺(tái) 主要面向個(gè)人用戶(hù) J2EE JavaPlatform2EnterpriseEdition Java2企業(yè)版 標(biāo)準(zhǔn)版的企業(yè)級(jí)擴(kuò)展 面向網(wǎng)絡(luò)用戶(hù) J2ME JavaPlatform2MicroEdition Java2微型版 面向嵌入式系統(tǒng)應(yīng)用 1 6 3JavaPlatform2 有關(guān)Java的幾張圖片 Eclipse 由Eclipse社區(qū)開(kāi)發(fā) 維護(hù)的一個(gè)開(kāi)放的可擴(kuò)展平臺(tái) 其實(shí)IBM是幕后老板 JBuilder系列 Borland公司產(chǎn)品 功能很強(qiáng)大 目前其實(shí)是加強(qiáng)版的Eclipse NetBeans 由Sun公司建立的開(kāi)放源碼的可擴(kuò)展開(kāi)發(fā)平臺(tái) 和Eclipse競(jìng)爭(zhēng)激烈 JavaSDK SoftwareDevelopmentKit 和上面三個(gè)不同 這不是集成開(kāi)發(fā)環(huán)境 IDE 集成在JDK中 只能在DOS命令窗口下運(yùn)行 但是操作簡(jiǎn)單 容易掌握 1 7Java語(yǔ)言的開(kāi)發(fā)工具 Bin文件夾安裝好JDK后 打開(kāi)安裝目錄的 bin文件夾 有20多個(gè)exe可執(zhí)行文件 它們都是Java語(yǔ)言工具 常用的有以下一些 javac exe Java編譯器 java exe Java解釋器 appletviewer exe JavaApplet的解釋器 可以用來(lái)運(yùn)行編譯好的Applet程序 jar exe Java語(yǔ)言壓縮工具 javadoc exe 用于生成API文檔 1 7Java的安裝 更新系統(tǒng)環(huán)境變量由于JavaSDK的編譯和運(yùn)行基本上都是在DOS環(huán)境下進(jìn)行 因此為了能在任何提示符下都可以方便地直接使用 bin文件夾中的可執(zhí)行文件和Java類(lèi)庫(kù) 我們需要對(duì)系統(tǒng)環(huán)境變量進(jìn)行更新設(shè)置 1 7Java的安裝 SDK JREJRE JavaRuntimeEnvironment 即Java程序的運(yùn)行環(huán)境 我們要想在某臺(tái)電腦上運(yùn)行Java程序 那么必須在該電腦上事先安裝JRE SDK SoftwareDevelopmentKit 是面向開(kāi)發(fā)人員使用的工具包 它提供了Java的開(kāi)發(fā)環(huán)境和運(yùn)行環(huán)境 Java應(yīng)用程序與Java小程序Java程序可以分為兩類(lèi) Java應(yīng)用程序 JavaApplication Java小程序 JavaApplet 1 7Java的安裝 第2章JAVA基礎(chǔ)語(yǔ)法 基礎(chǔ)的基礎(chǔ) 與C語(yǔ)言類(lèi)似 第一個(gè)程序 chapter2 HelloWorld java 類(lèi) class 是整個(gè)源程序的核心部分 在一個(gè)類(lèi)的類(lèi)體中可以定義變量 常量以及方法 main 方法是應(yīng)用程序的執(zhí)行入口 main 方法頭的定義是 publicstaticvoidmain Stringargs Java語(yǔ)言是嚴(yán)格區(qū)分大小寫(xiě)的語(yǔ)言 一個(gè)Java程序文件最多只能有一個(gè)public類(lèi) 此時(shí)文件的前綴名必須和該公有類(lèi)的名字相同 第一個(gè)程序的說(shuō)明 2 1標(biāo)識(shí)符與關(guān)鍵字 標(biāo)識(shí)符 字母開(kāi)頭后面可加數(shù)字駝峰規(guī)則 見(jiàn)名知意 區(qū)分大小寫(xiě)關(guān)鍵字P22 2 1注釋 2 2 1JAVA的數(shù)據(jù)類(lèi)型 四類(lèi)八種 基礎(chǔ)數(shù)據(jù)類(lèi)型 booleanbyte short int 默認(rèn)整數(shù) long 加L float 加F double 默認(rèn)浮點(diǎn)數(shù) char 轉(zhuǎn)義字符 注意他們的取值范圍 默認(rèn)值對(duì)象 接口 數(shù)組 引用型變量 chapter2 VarClass java 2 2 2變量與常量 變量 名字類(lèi)型值常量 不可變的變量final只能賦值一次 注意作用域 之間 chapter2 VarAndFinal java 2 2 3數(shù)據(jù)類(lèi)型轉(zhuǎn)換 表2 4計(jì)算轉(zhuǎn)換P30表2 5賦值轉(zhuǎn)換P31特別說(shuō)明 boolean不參與強(qiáng)制轉(zhuǎn)換會(huì)溢出或損失精度浮點(diǎn)轉(zhuǎn)整數(shù)chapter2 VarClass java 2 3運(yùn)算符 1 優(yōu)先級(jí)表2 6P322 運(yùn)算符 數(shù)據(jù)類(lèi)型結(jié)合 instanceof new P47 2 4控制結(jié)構(gòu) if if else if ifelse else whilefor continue break continue標(biāo)名號(hào)Loop for for continueloop switch case1 break case2 break default break chapter2 TestContinue java 第3章對(duì)象和類(lèi) 書(shū)寫(xiě) 類(lèi) 的基礎(chǔ) 3 1對(duì)象與類(lèi) 1 windows窗口2 彈球3 開(kāi)車(chē) 3 2定義類(lèi) 修飾符class類(lèi)名稱(chēng) 成員變量修飾符變量類(lèi)型變量名稱(chēng) 初始值 成員方法修飾符返回值類(lèi)型方法名稱(chēng) 參數(shù)列表 方法體 chapter3 Rectangle java 3 3變量的作用域 成員變量局部變量方法局部 內(nèi)局部chapter3 VarField java 3 4方法重載 函數(shù)名一樣 參數(shù)不一樣 重載參數(shù)不一樣 類(lèi)型順序個(gè)數(shù)chapter3 OverloadFunction javaP66 3 5創(chuàng)建對(duì)象 引用型變量 指針 P701類(lèi)名變量名 new構(gòu)造函數(shù) 2類(lèi)名變量名 函數(shù)返回值 3類(lèi)名變量名 變量名 4類(lèi)名變量名 null5new構(gòu)造函數(shù) 一次引用 ClassNamecn1 newClassName ClassNamecn2 newClassName cn1 cn2 3 6構(gòu)造函數(shù) 類(lèi)名相同無(wú)返回值可重載 默認(rèn)存在無(wú)參數(shù) 空實(shí)現(xiàn)構(gòu)造函數(shù) 自定義構(gòu)造函數(shù) 則屏蔽默認(rèn)構(gòu)造函數(shù)綜合練習(xí) 寫(xiě)一個(gè)類(lèi) 聲明一個(gè)對(duì)象 其他注意的問(wèn)題 3 7this this this 指向自身的指針 chapter3 TestThis java例3 8P73 3 8初始化 堆內(nèi)元素有默認(rèn)值 類(lèi)成員變量 棧內(nèi)元素沒(méi)有默認(rèn)值 函數(shù)體內(nèi) 例3 8P73 3 10對(duì)象的清理 理解垃圾回收機(jī)制finalize 方法1 手動(dòng)調(diào)用 2 內(nèi)存不足時(shí)自動(dòng)調(diào)用 修飾符 3 9static static變量static函數(shù)chapter3 TestStatic java 3 11訪(fǎng)問(wèn)控制修飾符 publicdefaultprotectedprivate 3 13參數(shù)傳遞 基本類(lèi)型參數(shù)傳遞引用型參數(shù)傳遞chapter3 TestParaTrans java圖3 43 5P78圖3 6P79ClassNamecn1 newClassName ClassNamecn2 newClassName 問(wèn)題 cn1 cn2 第4章繼承與多態(tài) 重點(diǎn)章節(jié) 繼承 4 1繼承基礎(chǔ) 繼承是復(fù)用類(lèi)的方法基礎(chǔ) 1 修飾符private 類(lèi)內(nèi)使用 外部不可見(jiàn)main除外protected 繼承權(quán)限 子類(lèi)可見(jiàn) default 包 文件夾 權(quán)限 包內(nèi)可見(jiàn) public 任意權(quán)限2 class子類(lèi)名extends父類(lèi)名 4 1繼承基礎(chǔ) 3 重寫(xiě)函數(shù)重點(diǎn)是copy返回值函數(shù)名參數(shù)列表都相同訪(fǎng)問(wèn)權(quán)限只能變寬default protected publicprivate final不能重寫(xiě)chapter4 TestExtends java 4 2構(gòu)造函數(shù)的調(diào)用順序 先祖先 再客人 最后是自己例4 3P96默認(rèn)調(diào)用super super 指針chapter4 TestSuper java 4 3繼承與組合 P87三條 OBJECT類(lèi) 頂級(jí)類(lèi) 所有類(lèi)的父類(lèi) 4 5toString 默認(rèn) 返回getClass getName Integer toHexString hashCode System out println a System out println a toString 自定義 重寫(xiě)chapter4 TestToString java 4 6equals 基礎(chǔ)數(shù)據(jù)類(lèi)型使用 比較對(duì)象與對(duì)象比較存在標(biāo)準(zhǔn)Object標(biāo)準(zhǔn) 內(nèi)存相同 可以自定義 重寫(xiě)equals 方法chapter4 TestEquals java 多態(tài) 重點(diǎn) 4 7多態(tài) 多態(tài) 在類(lèi)繼承中父類(lèi)及子類(lèi)中可以有多個(gè)同名但意義不同的的屬性 實(shí)現(xiàn)方式不同的方法 兩種情況 覆蓋和重載多態(tài) 繼承 重載 父類(lèi)指針指向子類(lèi)對(duì)象 4 7向上轉(zhuǎn)型 父類(lèi)指針指向子類(lèi)對(duì)象P92例4 8P93例4 9 4 7構(gòu)造器中多態(tài)方法的行為 例4 10注意 復(fù)習(xí)構(gòu)造方法的順序 4 7動(dòng)態(tài)綁定 chapter4 TestPoly java 4 7向下轉(zhuǎn)型 chapter4 TestEquals2 java 第5章抽象類(lèi) 接口與內(nèi)部類(lèi) 抽象類(lèi) 接口 重點(diǎn) 接口 第二種引用類(lèi)型變量 5 1抽象類(lèi) abstractclass 共同的代碼應(yīng)當(dāng)盡量移動(dòng)到抽象類(lèi)中數(shù)據(jù)的移動(dòng)方向是從抽象類(lèi)到具體類(lèi)abstractreturnTpyeabsMethName ParaList 抽象類(lèi)不能實(shí)例化 必需被繼承抽象方法必需在抽象類(lèi)中抽象方法不能是private的 例5 3P100 5 2接口 極度的抽象類(lèi) 沒(méi)有任何方法體的方法interfaceintfName staticfinal varName varValue abstractfunction classAimplementsInterfaceB 5 2接口是一個(gè)引用類(lèi)型 Interfaceif newClassImpIF Class ClassImpIF implementsinterface if 類(lèi)似 父類(lèi)指針指向子類(lèi)對(duì)象 例5 5P105 課堂練習(xí) 有三個(gè)動(dòng)物A1 A2 A3 每只動(dòng)物的叫聲不一樣 打印不同的文字 寫(xiě)一個(gè)函數(shù)參數(shù)為一只動(dòng)物 命令這只動(dòng)物叫一聲 要求根據(jù)傳入動(dòng)物的不同 打印對(duì)應(yīng)的文字 5 3接口可以有繼承 例5 6P
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年法律職業(yè)資格考試主要知識(shí)點(diǎn)試題及答案
- 比亞迪入職培訓(xùn)
- 企業(yè)培訓(xùn)課件
- 承臺(tái)安全教育培訓(xùn)
- 競(jìng)選護(hù)理總帶教
- 素質(zhì)教育評(píng)價(jià)體系構(gòu)建與實(shí)施路徑
- 腫瘤科護(hù)患工休座談會(huì)
- 幼兒園小班美術(shù)種子粘貼畫(huà)教案
- 員工制度管理制度培訓(xùn)
- 部門(mén)培訓(xùn)方案
- 新生兒糖尿病喂養(yǎng)指導(dǎo)
- 山西省太原市(2024年-2025年小學(xué)五年級(jí)語(yǔ)文)統(tǒng)編版期末考試(下學(xué)期)試卷及答案
- 住院患者跌倒、墜床、壓力性損傷的風(fēng)險(xiǎn)評(píng)估及管理
- 2023風(fēng)光互補(bǔ)路燈設(shè)計(jì)方案
- 2023年山東省夏季普通高中學(xué)業(yè)水平合格考試會(huì)考生物試題及參考答案
- 2024年山東省青島市中考英語(yǔ)試卷附答案
- 材料力學(xué)(山東聯(lián)盟-中國(guó)石油大學(xué)(華東))智慧樹(shù)知到期末考試答案章節(jié)答案2024年中國(guó)石油大學(xué)(華東)
- 江西省南昌二中心遠(yuǎn)教育集團(tuán)九灣學(xué)校2023-2024學(xué)年八年級(jí)下學(xué)期期末考試物理試題
- 深入理解Nginx(模塊開(kāi)發(fā)與架構(gòu)解析)
- MOOC 中國(guó)文化概論-華南師范大學(xué) 中國(guó)大學(xué)慕課答案
- 初中人教版八年級(jí)下冊(cè)期末物理真題模擬試卷經(jīng)典套題
評(píng)論
0/150
提交評(píng)論