版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java語言程序設(shè)計(jì),計(jì)算機(jī)系計(jì)科教研室 鞠宏軍,java 語 言 程 序 設(shè) 計(jì),2,2020年8月15日,教學(xué)要求,1.上課時(shí)做筆記 2.每班選一位課代表 ,負(fù)責(zé)收作業(yè),聯(lián)系,準(zhǔn)備記分冊(cè)(標(biāo)上班長(zhǎng)、學(xué)委電話) 3.有問題及時(shí)向老師反饋 4.課堂紀(jì)律(上課不允許說話、上機(jī)不允許玩游戲,手機(jī)打成震動(dòng)),java 語 言 程 序 設(shè) 計(jì),3,2020年8月15日,答疑,答疑: 時(shí)間:每周周二9、10節(jié) 地點(diǎn):博觀樓10203 可以另約時(shí)間答疑 聯(lián)系方式: TelEmail: QQ:896420360,java 語 言 程 序 設(shè) 計(jì),4,2020年8月15日,教學(xué)安排:
2、28學(xué)時(shí)理論+20學(xué)時(shí)上機(jī) 上課時(shí)間:1-5、7-15周 教學(xué)目標(biāo):掌握以Java 語言為基礎(chǔ)的面向?qū)ο缶幊碳夹g(shù),并初步掌握以Java語言為核心的應(yīng)用軟件開發(fā)和方案設(shè)計(jì)能力 ,從而能夠進(jìn)行一些綜合的面向?qū)ο蟮南到y(tǒng)開發(fā)。 考查方式:筆試,java 語 言 程 序 設(shè) 計(jì),5,2020年8月15日,第1章 Java語言概述,本章導(dǎo)讀 1. 了解Java的發(fā)展簡(jiǎn)史; 2. 理解Java 對(duì)軟件開發(fā)技術(shù)的影響; 3. 了解Java的應(yīng)用前景及特點(diǎn); 4. 掌握J(rèn)ava JDK的安裝與設(shè)置 5. 掌握Eclipse的簡(jiǎn)單使用,1.產(chǎn)生:1991年,SUN MicroSystem公司的Jame Gosli
3、ng、Bill Joe等人為在電視機(jī)、控制烤箱等家用消費(fèi)類電子產(chǎn)品上進(jìn)行交互式操作而開發(fā)了一個(gè)名為Oak的軟件。但當(dāng)時(shí)并沒有引起人們的注意。 產(chǎn)生原因:C語言總是針對(duì)特定的芯片將源程序編譯為機(jī)器碼,在其他類型的芯片CPU上需要重修編譯或修改,移植性性差的問題而產(chǎn)生的。推出的Java采用虛擬機(jī)機(jī)制,可以實(shí)現(xiàn)可移植、快平臺(tái),適用于各種CPU芯片,適用于各種操作系統(tǒng)。,1.1 Java語言的誕生,Java虛擬機(jī)及運(yùn)行機(jī)制,Java源程序,以.java為擴(kuò)展名,基于Windows的解釋器,基于Linux的解釋器,基于Solaris的解釋器,基于Mocintosh的解釋器,在Windows系統(tǒng)上運(yùn)行,在
4、Linux系統(tǒng)上運(yùn)行,在Solaris系統(tǒng)上運(yùn)行,在Mocintosh系統(tǒng)上運(yùn)行,無論哪種虛擬機(jī)上都包括了相應(yīng)的Java虛擬機(jī),各自的虛擬機(jī)將字節(jié)碼文件加載到內(nèi)存,然后解釋執(zhí)行。,1.1.1 Java的起源和發(fā)展 2.發(fā)展: 1994年下半年,Internet的迅猛發(fā)展,促進(jìn)了 Java語言研制的進(jìn)展,1995年更名為Java并向公眾推出,使得它逐漸成為 Internet上受歡迎的開發(fā)與編程語言。 原因:因?yàn)镮nternet上也有各種不同的計(jì)算機(jī),Java可以完全在不同的操作系統(tǒng)和CPU芯片上運(yùn)行,所以Internet和Web的出現(xiàn)也推動(dòng)了Java的發(fā)展 1995年以來:面向網(wǎng)絡(luò)應(yīng)用,類庫不斷
5、豐富,性能不斷提高,應(yīng)用領(lǐng)域不斷拓展。 應(yīng)用:Java是當(dāng)今最流行的軟件開發(fā)語言之一,推出的 Java2 而類則提供了一類對(duì)象的原型,并且通過繼承機(jī)制,子類可以使用父類所提供的方法,實(shí)現(xiàn)了代碼的復(fù)用。,3.分布性 Java是面向網(wǎng)絡(luò)的語言。通過它提供的類庫可以處理 TCP/IP協(xié)議,用戶可以通過 URL地址在網(wǎng)絡(luò)上很方便地訪問其它對(duì)象。,1.3 java 的特點(diǎn),4.可靠性 Java在編譯和運(yùn)行程序時(shí),都要對(duì)可能出現(xiàn)的問題進(jìn)行檢查,以消除錯(cuò)誤的產(chǎn)生。它提供自動(dòng)垃圾收集來進(jìn)行內(nèi)存管理,防止程序員在管理內(nèi)存時(shí)容易產(chǎn)生的錯(cuò)誤。通過集成的面向?qū)ο蟮睦馓幚頇C(jī)制,在編譯時(shí),Java提示出可能出現(xiàn)但未被處
6、理的例外。另外,Java在編譯時(shí)還可捕獲類型聲明中的許多常見錯(cuò)誤,防止動(dòng)態(tài)運(yùn)行時(shí)出現(xiàn)不匹配問題。 5.安全性 用于網(wǎng)絡(luò)、分布環(huán)境下的 Java必須要防止非法的入侵。 Java不支持指針,一切對(duì)內(nèi)存的訪問都必須通過對(duì)象的實(shí)例變量來實(shí)現(xiàn),這樣就防止程序員使用“特洛伊 ”木馬等欺騙手段訪問對(duì)象的私有成員,同時(shí)也避免了指針操作中容易產(chǎn)生的錯(cuò)誤。 6.平臺(tái)無關(guān)性 Java解釋器生成與體系結(jié)構(gòu)無關(guān)的字節(jié)碼指令,只要安裝了 Java運(yùn)行時(shí)系統(tǒng),Java程序就可在任意的處理器上運(yùn)行。這些字節(jié)碼指令對(duì)應(yīng)于 Java虛擬機(jī)中的表示,Java解釋器得到字節(jié)碼后,對(duì)它進(jìn)行轉(zhuǎn)換,使之能夠在不同的平臺(tái)運(yùn)行。,7.可移植性
7、 與平臺(tái)無關(guān)的特性使 Java程序可以方便地被移植到網(wǎng)絡(luò)上的不同機(jī)器。同時(shí),Java的類庫中也實(shí)現(xiàn)了與不同平臺(tái)的接口,使這些類庫可以移植。另外,Java編譯器是由 Java語言實(shí)現(xiàn)的,Java運(yùn)行時(shí)系統(tǒng)由標(biāo)準(zhǔn)C實(shí)現(xiàn),這使得Java 系統(tǒng)本身也具有可移植性。 8.解釋執(zhí)行 Java解釋器直接對(duì)Java的字節(jié)碼進(jìn)行解釋執(zhí)行。字節(jié)碼本身攜帶了許多編譯時(shí)信息,使得連接過程更加簡(jiǎn)單。 9.高性能 和其它解釋執(zhí)行的語言(例如BASIC)不同,Java字節(jié)碼的設(shè)計(jì)使之能很容易地直接轉(zhuǎn)換成對(duì)應(yīng)于特定CPU的機(jī)器碼,從而得到較高的性能。,10.多線程 多線程機(jī)制使應(yīng)用程序能夠并行執(zhí)行,而且同步機(jī)制保證了對(duì)共享數(shù)
8、據(jù)的正確操作。通過使用多線程,程序設(shè)計(jì)者可以分別用不同的線程完成特定的行為,而不需要采用全局的事件循環(huán)機(jī)制,這樣就很容易地實(shí)現(xiàn)網(wǎng)絡(luò)上的實(shí)時(shí)交互行為。 11.動(dòng)態(tài)性 Java的設(shè)計(jì)使它適合于一個(gè)不斷發(fā)展的環(huán)境。在類庫中可以自由地加入新的方法和實(shí)例變量而不會(huì)影響用戶程序的執(zhí)行。另外, Java通過接口來支持多重繼承,使之比嚴(yán)格的類繼承具有更靈活的方式和擴(kuò)展性。,豐富的類庫 1.語言包提供的支持包括字符串處理、多線程處理、異常處理、數(shù)學(xué)函數(shù)處理等,可以用它簡(jiǎn)單地實(shí)現(xiàn)Java程序的運(yùn)行平臺(tái)。 2.實(shí)用程序包提供的支持包括哈希表、堆棧、可變數(shù)組、時(shí)間和日期等。 3.輸入輸出包用統(tǒng)一的 “流 ”模型來實(shí)現(xiàn)
9、所有格式的 I/O,包括文件系統(tǒng)、網(wǎng)絡(luò)輸入。 4.抽象圖形用戶接口包實(shí)現(xiàn)了不同平臺(tái)的計(jì)算機(jī)的圖形用戶接口部件,包括窗口、菜單、滾動(dòng)條、對(duì)話框等,使得 Java可以移植到不同平臺(tái)的機(jī)器。 5.低級(jí)網(wǎng)絡(luò)包用于實(shí)現(xiàn) Socket編程。網(wǎng)絡(luò)包支持 Internet的 TCP/IP協(xié)議,提供了與 Internet的接口。它支持 URL連接,WWW的即時(shí)訪問,并且簡(jiǎn)化了用戶/服務(wù)器模型的程序設(shè)計(jì)。,java 語 言 程 序 設(shè) 計(jì),17,2020年8月15日,1.4 java 與C/C+之關(guān)系,JAVA和C+都是面向?qū)ο笳Z言 JAVA部分思想和語法參照C+ 拋棄C+中的指針、多重繼承等特點(diǎn),增加異常處理、
10、內(nèi)存自動(dòng)管理等特性。 JAVA跨平臺(tái)。,返回,java 語 言 程 序 設(shè) 計(jì),18,2020年8月15日,1.5 Java運(yùn)行平臺(tái),1. 三種平臺(tái)簡(jiǎn)介,Java的三個(gè)版本 Java SE(J2SE):它允許開發(fā)和部署在桌面、服務(wù)器、嵌入式環(huán)境和實(shí)時(shí)環(huán)境中使用的 Java 應(yīng)用程序。Java SE 包含了支持 Java Web 服務(wù)開發(fā)的類,并為 Java Platform,Enterprise Edition(Java EE)提供基礎(chǔ)。 Java EE(J2EE):企業(yè)版本幫助開發(fā)和部署可移植、健壯、可伸縮且安全的服務(wù)器端 Java 應(yīng)用程序。Java EE 是在 Java SE 的基礎(chǔ)上構(gòu)
11、建的,它提供 Web 服務(wù)、組件模型、管理和通信 API,可以用來實(shí)現(xiàn)企業(yè)級(jí)的面向服務(wù)體系結(jié)構(gòu)和 Web 2.0 應(yīng)用程序。 Java ME(J2ME):Java ME 為在移動(dòng)設(shè)備和嵌入式設(shè)備(比如手機(jī)、PDA、汽車導(dǎo)航、電視機(jī)頂盒和打印機(jī))上運(yùn)行的應(yīng)用程序提供一個(gè)健壯且靈活的環(huán)境。Java ME 包括靈活的用戶界面、健壯的安全模型、許多內(nèi)置的網(wǎng)絡(luò)協(xié)議以及對(duì)可以動(dòng)態(tài)下載的連網(wǎng)和離線應(yīng)用程序的豐富支持?;?Java ME 規(guī)范的應(yīng)用程序只需編寫一次,就可以用于許多設(shè)備,而且可以利用每個(gè)設(shè)備的本機(jī)功能。,java 語 言 程 序 設(shè) 計(jì),20,2020年8月15日,2下載、安裝和搭建Java
12、SE平臺(tái),JDK(Java Development Kit) 開發(fā)工具 運(yùn)行環(huán)境, java及基礎(chǔ)核心類(JRE) 類庫 源碼、樣例、頭文件等,Java JDK分為以下三個(gè)版本: Java 2 Platform, Standard Edition Java 2 Platform, Enterprise Edition Java 2 Platform Micro Edition 免費(fèi)下載Java jdk的網(wǎng)址: 自動(dòng)跳轉(zhuǎn)到 ( 2009年04月,oracle(甲骨文) 收購sun ),下載,根據(jù):計(jì)算機(jī)右鍵-屬性-高級(jí)系統(tǒng)設(shè)置-系統(tǒng)類型(64位操作系統(tǒng)),運(yùn)行:jdk-7u25-windows-
13、x64.exe JDK(JDK,Java Development Kit)包括 Java編譯器(javac,Java Complier) Java解釋器(java,Java interpreter) 文檔生成器(javadoc ,Documentation generator) 安裝過程中需要記住或修改安裝目錄:D:jdk,安裝,此處可不修改直接按下一步按鈕,計(jì)算機(jī)右鍵-屬性-高級(jí)系統(tǒng)設(shè)置-環(huán)境變量,開發(fā)環(huán)境配置,開發(fā)環(huán)境配置,JAVA_HOME JDK的安裝目錄,如: D:JDK CLASSPATH 類的搜索路徑,如: .; D:JDKlibtools.jar; %JAVA_HOME%lib
14、dt.jar PATH 可執(zhí)行文件搜索路徑設(shè)置,例如java.exe,javac.exe %JAVA_HOME%bin,測(cè)試JDK安裝:java version,C:java Usage: java -options class args. (to execute a class) or java -jar -options jarfile args. (to execute a jar file) C:javac Usage: javac C:java version java version 1.4.2_03 Java(TM) 2 Runtime Environment, Standard
15、 Edition (build 1.4.2_03-b02) Java HotSpot(TM) Client VM (build 1.4.2_03-b02, mixed mode),java 語 言 程 序 設(shè) 計(jì),31,2020年8月15日,3. 僅僅安裝JRE平臺(tái),如果只想運(yùn)行別人的Java程序可以只安裝Java運(yùn)行環(huán)境JRE,JRE由Java虛擬機(jī)、Java的核心類以及一些支持文件組成。 可以登錄Sun的網(wǎng)站下載Java的JRE。,返回,java 語 言 程 序 設(shè) 計(jì),32,2020年8月15日,4. Java IDE,JBuilder Eclipse MyEclipse NetBean
16、s 其他:如Visual Age for Java等,Eclipse下載:華軍 ,直接解壓,不需要安裝直接運(yùn)行,java 語 言 程 序 設(shè) 計(jì),35,2020年8月15日,5. Java API,可到Sun公司下載Java類庫幫助文檔,如jdk-x-doc.zip 中文API CHM,返回,java 語 言 程 序 設(shè) 計(jì),36,2020年8月15日,1.6 Java程序開發(fā),J2SE開發(fā)的程序:Java應(yīng)用程序和Java Applet 1. Java應(yīng)用程序的開發(fā) 開發(fā)Java應(yīng)用程序的三個(gè)步驟:編寫源文件、編譯源文件生成字節(jié)碼、加載運(yùn)行字節(jié)碼。,Java Application程序編輯、
17、編譯與運(yùn)行,public class HelloJava public static void main(String args) System.out.println(Hello Java); 1、編輯:可以用Editplus或記事本,文件名必須保存為HelloJava,和類名一致 2、編譯:javac HelloJava.java,大小寫必須一致 3、運(yùn)行:java HelloJava,java 語 言 程 序 設(shè) 計(jì),38,2020年8月15日,class A void f() System.out.println(I am A); class B public class Hello
18、public static void main (String args ) System.out.println(你好,很高興學(xué)習(xí)Java); A a=new A(); a.f(); ,java 語 言 程 序 設(shè) 計(jì),39,2020年8月15日,(1)編寫源文件 源文件的組成 使用一個(gè)文字編輯器,如EditPlus或記事本編寫源文件。 Java應(yīng)用程序的源文件是由一個(gè)或若干個(gè)書寫形式互相獨(dú)立的類組成。 各獨(dú)立的類中,可以有一個(gè)main方法的主類,應(yīng)用程序;也可以都不包含main方法,非應(yīng)用程序,供其他應(yīng)用程序調(diào)用;,public class HelloJava public static
19、void main(String args) System.out.println(Hello Java); 保存文件名:HelloJava.java,main方法是java程序執(zhí)行的起點(diǎn),每個(gè)Java應(yīng)用程序中必須有且只能有一個(gè); main方法的固定格式 public static void main(string args) ; static:靜態(tài)的成員變量和方法獨(dú)立于類對(duì)象,可以不生成類對(duì)象直接訪問、運(yùn)行,虛擬機(jī)加載類時(shí)自動(dòng)執(zhí)行一次。 string args:命令行參數(shù),如java HelloJava AAA BBB CCC System.out.println(args0); AAA
20、string args無參數(shù)也不可省略 System.out.println:輸出并換行,printf(“*n”);,java 語 言 程 序 設(shè) 計(jì),41,2020年8月15日,應(yīng)用程序的主類,一個(gè)Java應(yīng)用程序必須有一個(gè)類含有public static void main(String args )方法,稱這個(gè)類是應(yīng)用程序的主類。 主類不能用protected或private修飾。 Java區(qū)分大小寫,注意:是指應(yīng)用程序,而有的程序是被其他應(yīng)用程序引用,則可無主類,java 語 言 程 序 設(shè) 計(jì),42,2020年8月15日,源文件的命名規(guī)則,源文件的命名規(guī)則如下: 如果源文件中有多個(gè)類
21、,那么只能有一個(gè)類是public類; 如果有一個(gè)類是public類,那么源文件的名字必須與這個(gè)類的名字完全相同,擴(kuò)展名是java;如果是包含main方法的應(yīng)用程序,則這個(gè)public必須修飾主類 如果源文件沒有public類,那么源文件的名字只要和某個(gè)類的名字相同,并且擴(kuò)展名是java就可以。 文件名字中英文任意,注意大小寫,可以沒有public類,java 語 言 程 序 設(shè) 計(jì),43,2020年8月15日,編程習(xí)慣,在編寫程序時(shí),一行最好只寫一條語句 類體的以方法的大括號(hào)最好也獨(dú)占一行,并有明顯的縮進(jìn)。 命名習(xí)慣: 類名首字母大寫,每個(gè)單詞首字母大寫。 常量字母大寫。 方法首字符小寫,之后多個(gè)單詞首字符大寫。 見名知意。,java 語 言 程 序 設(shè) 計(jì),44,2020年8月15日,(2)編譯Java源程序,使用編譯器(javac.exe)對(duì)其進(jìn)行編譯:打開MS-DOS命令行窗口,進(jìn)入C盤,然后進(jìn)入到文件所在目錄中,如圖1.4所示。,java 語 言 程 序 設(shè) 計(jì),45,2020年8月15日,使用參數(shù)“d”編譯源文件,使用參數(shù)-d可以將字節(jié)碼文件存放到你指定的有效目錄中 如: javac d D:JAVA1000 H
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鹽城師范學(xué)院《小學(xué)教師專業(yè)成長(zhǎng)》2021-2022學(xué)年第一學(xué)期期末試卷
- 鹽城師范學(xué)院《歲嬰兒的保育與教育》2021-2022學(xué)年第一學(xué)期期末試卷
- 冀教版四年級(jí)上冊(cè)數(shù)學(xué)第四單元 線和角 測(cè)試卷附答案(培優(yōu)a卷)
- 北師大版四年級(jí)上冊(cè)數(shù)學(xué)第三單元 乘法 測(cè)試卷附完整答案(名師系列)
- 2024年凝血因子VIII、IX合作協(xié)議書
- 2024合同架構(gòu)樣本范文
- 航空航天高性能復(fù)合材料部件智能制造項(xiàng)目環(huán)評(píng)報(bào)告表
- 2024年攝影擴(kuò)印服務(wù)合作協(xié)議書
- 鹽城師范學(xué)院《市場(chǎng)營(yíng)銷學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 鹽城師范學(xué)院《企業(yè)項(xiàng)目施工實(shí)踐》2022-2023學(xué)年第一學(xué)期期末試卷
- 大學(xué)生職業(yè)生涯規(guī)劃成品
- (高清版)DB42T 2179-2024 裝配式建筑評(píng)價(jià)標(biāo)準(zhǔn)
- DL∕T 796-2012 風(fēng)力發(fā)電場(chǎng)安全規(guī)程
- 2024廣西繼續(xù)教育公需科目(高質(zhì)量共建“一帶一路”)
- 2024年國(guó)家公務(wù)員考試行測(cè)真題完整版
- MOOC 數(shù)學(xué)文化十講-南開大學(xué) 中國(guó)大學(xué)慕課答案
- 寫作與溝通智慧樹知到課后章節(jié)答案2023年下杭州師范大學(xué)
- 漢語拼音字母表默寫表
- 困境兒童(含孤兒事實(shí)無人撫養(yǎng)兒童監(jiān)護(hù)缺失兒童)風(fēng)險(xiǎn)評(píng)估表
- 漢語拼音過關(guān)分類檢測(cè)(直接打印)
- 血液凈化詳解
評(píng)論
0/150
提交評(píng)論