Ch1Java語言概述與開發(fā)環(huán)境設置課件_第1頁
Ch1Java語言概述與開發(fā)環(huán)境設置課件_第2頁
Ch1Java語言概述與開發(fā)環(huán)境設置課件_第3頁
Ch1Java語言概述與開發(fā)環(huán)境設置課件_第4頁
Ch1Java語言概述與開發(fā)環(huán)境設置課件_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Java語言程序設計曹迎春yccaoJava語言程序設計曹迎春第一章 概論2022/10/102第一章 概論2022/10/92學習目標了解java語言產(chǎn)生的歷史和工作原理掌握java語言作為一門面向對象編程語言的基本編程思路掌握java程序的結構、編程規(guī)范學習閱讀java幫助文檔安裝java開發(fā)環(huán)境和幫助文檔學會編寫小的java程序并生成相應的幫助文檔。2022/10/103學習目標了解java語言產(chǎn)生的歷史和工作原理2022/10/學習指南跳過面向過程的編程思路直接進入到面向對象的編程方式2022/10/104學習指南跳過面向過程的編程思路2022/10/94難點和重點java虛擬機無用內

2、存自動回收器java語言的特點面向對象的編程思路java編程規(guī)范java類庫幫助文檔的瀏覽和生成2022/10/105難點和重點java虛擬機2022/10/95課前思考一門新的語言的產(chǎn)生是否需要借鑒以前的編程語言?在java語言出現(xiàn)之前是否存在其它跨平臺的語言?有哪些編程語言是面向對象的?而哪些編程語言是面向過程的?從編程思路上存在著哪些本質差別?C+語言是面向對象的還是面向過程的?一段優(yōu)秀的程序代碼是否應該是可讀性極強的?程序員之間是否應該遵循相同的編程規(guī)范?一個程序員編好的代碼如果需要讓別的程序員使用,如何提供該代碼的使用說明?2022/10/106課前思考一門新的語言的產(chǎn)生是否需要借鑒

3、以前的編程語言?202Java語言的產(chǎn)生1991年,SUN公司為消費電子產(chǎn)品開發(fā)一個名為oak的軟件,在安全性和可移植性方面有所增強。2022/10/107Java語言的產(chǎn)生1991年,SUN公司為消費電子產(chǎn)品開發(fā)一關于OaK語言OAK是Sun公司1991年開發(fā)的一種稱為機頂盒語言。命令可以迅速的從有線電視公司傳到用戶的機頂盒上,反之亦然;(小巧)可以應用于不同的有線電視公司;(便攜)2022/10/108關于OaK語言OAK是Sun公司1991年開發(fā)的一種稱為機頂Java語言的產(chǎn)生1994年下半年,Internet發(fā)展迅猛,SUN把oak的技術應用于網(wǎng)絡,命名為Java。1995年,SUN正

4、式發(fā)布Java語言,Microsoft,IBM,NETSCAPE,NOVELL APPLE,DEC,SGI等公司紛紛購買Java語言的使用權。1996年,SUN公司專門成立Javasoft分公司來發(fā)展Java。2022/10/109Java語言的產(chǎn)生1994年下半年,Internet發(fā)展迅猛Java的最新發(fā)展動態(tài)JavaXML為電子商務提供解決方案分布式計算:Jini向消費電子領域進軍:KVM,Personal Java,Embbeded Java交互式電視:JavaTV實時Java:Real Time JavaPeer2peer:JXTAJ2EE和J2ME的廣泛應用2022/10/1010J

5、ava的最新發(fā)展動態(tài)JavaXML為電子商務提供解決方案Java的設計目標創(chuàng)建一種面向對象的程序設計語言,而不是面向過程的語言;提供一個解釋執(zhí)行的程序運行環(huán)境,使程序代碼獨立于平臺;吸收C和C的優(yōu)點,使程序員容易掌握;去掉C和C中影響程序健壯性的部分,使程序更安全,例如指針、內存申請和釋放;實現(xiàn)多線程,使得程序能夠同時執(zhí)行多個任務;提供動態(tài)下載程序代碼的機制;提供代碼校驗機制以保證安全性;2022/10/1011Java的設計目標創(chuàng)建一種面向對象的程序設計語言,而不是面向Java語言的特點簡單面向對象分布式健壯結構中立安全可移植可解釋的高性能2022/10/1012Java語言的特點簡單202

6、2/10/912三個實現(xiàn)機制Java虛擬機(Java Virtual Machine)無用內存收集機制(Garbage Collection)代碼安全性檢測(Code Security)2022/10/1013三個實現(xiàn)機制Java虛擬機(Java Virtual MacJava虛擬機在一臺計算機上由軟件模擬的假想的計算機。Java虛擬機的代碼存儲在class文件中(也稱為字節(jié)碼文件)。Java編譯器針對Java虛擬機產(chǎn)生class文件,因此是獨立于平臺的。Java解釋器負責將Java虛擬機的代碼在特定的平臺上運行。2022/10/1014Java虛擬機在一臺計算機上由軟件模擬的假想的計算機。J

7、avJava虛擬機2022/10/1015任何一個編譯器,不是JVM的內容。Java虛擬機2022/10/915任何一個編譯器,不是JVJVM執(zhí)行步驟Step1:編輯源代碼Step2:JAVA編譯器將其編譯為class文件(JVM規(guī)范的字節(jié)碼)Step3:JAVA解釋器負責將class文件解釋運行(解釋器有兩個功能:執(zhí)行字節(jié)碼、對底層硬件平臺做適合調用)加載代碼:由class loader完成校驗代碼:由bytecode verifier完成執(zhí)行代碼:由runtime interpreter完成2022/10/1016JVM執(zhí)行步驟Step1:編輯源代碼2022/10/916Java虛擬機的建

8、立Java虛擬機的建立需要針對不同的軟硬件平臺做專門的實現(xiàn)。2022/10/1017Java虛擬機的建立Java虛擬機的建立需要針對不同的軟硬件無用內存自動回收機制2022/10/1018無用內存自動回收機制2022/10/918代碼安全性檢查機制檢驗類文件是否符合類文件規(guī)范檢查類文件中的代碼是否存在非法操作VTM采用“沙箱”運行模式將代碼和數(shù)據(jù)都限制在一定內存空間里執(zhí)行,不允許程序訪問該內存空間外的內存。2022/10/1019代碼安全性檢查機制檢驗類文件是否符合類文件規(guī)范2022/10Java平臺不斷擴展的計算平臺企業(yè)計算:Java 2 Enterprise Edition J2EE桌面計

9、算:Java 2 Standard Edition J2SE嵌入計算:Java 2 Micro Edition J2ME2022/10/1020Java平臺不斷擴展的計算平臺企業(yè)計算:Java 2 EnJava平臺不斷擴展的計算平臺2022/10/1021Java平臺不斷擴展的計算平臺2022/10/921建立Java開發(fā)環(huán)境安裝Java Develop Kit(JDK)瀏覽/javaee/index.jsp。在出現(xiàn)的窗口里面選擇合適的版本。選擇Windows版本JDK下載。在下載結束以后,進入安裝過程。2022/10/1022建立Java開發(fā)環(huán)境安裝Java Develop Kit(J202

10、2/10/10232022/10/923環(huán)境變量的配置右擊“我的電腦”打開快捷菜單,選擇“屬性”命令,打開“系統(tǒng)特性”對話框。選擇“高級”選項卡,單擊“環(huán)境變量”按鈕,將會彈出對話框。單擊“的用戶變量”選項組下的“新建”按鈕,打開“新建用戶變量”對話框。在“變量名”文本框中輸入JAVA_HOME,在“變量值”文本框中輸入E:Java。假設JDK的安裝路徑為E:Java。在“變量名”文本框中輸入PATH,在“變量值”文本框中輸入E:Javabin。2022/10/1024環(huán)境變量的配置右擊“我的電腦”打開快捷菜單,選擇“屬性”命令驗證jdk安裝情況在命令行方式下分別輸入命令:javacjava2

11、022/10/1025驗證jdk安裝情況在命令行方式下分別輸入命令:2022/10構建java程序2022/10/1026構建java程序2022/10/926編譯和運行java程序2022/10/1027編譯和運行java程序2022/10/927Java源程序結構package語句 /0或1條,必須放在文件開始import語句 /0或多條,必須放在所有類定義之前public classDefinition /0或1個。文件名必須與該類的類名完全相同classDefinition /類定義,個數(shù)不限interfaceDefinition /接口定義,個數(shù)不限2022/10/1028Java源

12、程序結構package語句 2022/10/92Java程序結構示例package javawork.helloworld; /*把編譯生成的所有.class文件放到包 javawork.helloworld中*/import java.awt.*; /告訴編譯器本程序中用到系統(tǒng)的AWT包import javawork.newcentury; /*告訴編譯器本程序中用到用戶自定義 的包javawork.newcentury*/public class HelloWorldApp. /*公共類HelloWorldApp的定義,名字與文件名相同*/class TheFirstClass. /第一個

13、普通類TheFirstClass的定義class TheSecondClass. /第二個普通類TheSecondClass的定義. /其它普通類的定義interface TheFirstInterface. /第一個接口TheFirstInterface的定義. /其它接口定義2022/10/1029Java程序結構示例package javawork.helpackage語句包(package)用于管理生成的java字節(jié)碼文件(.class)其對應于文件系統(tǒng)中的目錄,目的是把編譯生成的.class文件放入該目錄。例如:javawork.helloworld對應于目錄“pathjavawor

14、khelloworld,其中path需在編譯時指定,且該目錄須存在;如果javaworkhelloworld不存在則創(chuàng)建該目錄。例如: javac -d f:javaproject HelloWorldApp.java則生成的HelloWorldApp.class文件將放在目錄f:javaprojectjavaworkhelloworld中如果程序中沒有package語句,或者有package語句但是在編譯時不用-d選項,則生成的.class文件放入當前目錄。2022/10/1030package語句包(package)2022/10/930Import語句import語句在程序中用到了標準類

15、庫或自定義包中的類,需要用import來聲明??梢月暶饕粋€包:import java.awt.*在引用到類或者包時,將沿著類路徑classpath開始尋找相應的.class文件,因此需要事先設置環(huán)境變量classpath:classpath=.;e:javalib2022/10/1031Import語句import語句2022/10/931Java程序結構源文件的命名規(guī)則如果.java文件包含一個public類,它必須按該類名命名。一個源文件中最多只能有一個public類,其他類的個數(shù)不限。2022/10/1032Java程序結構源文件的命名規(guī)則2022/10/932Java編程規(guī)范包名全小寫

16、,一般為名詞,如:java.awt.event;類名首字母大寫,每個單詞的首字母大寫,如:class HelloWorldApp;接口名同類名,如:interface Collection;方法名一般為動詞,小寫字母開頭,每個單詞的首字母都要大寫,如:balanceAccount,isButtonPressed;變量名全小寫,一般為名詞,如:length;常量名基本類型的常量名為全大寫,如:int YEAR, int WEEK_OF_MONTH;對象常量大小寫混合。2022/10/1033Java編程規(guī)范包名2022/10/933本章小結Java的產(chǎn)生Java的特點Java虛擬機和java平臺

17、Java開發(fā)環(huán)境的建立構建java程序Java的編程規(guī)范2022/10/1034本章小結Java的產(chǎn)生2022/10/934課后習題1.下載并且安裝Java Develop Kit(JDK)。2.下載并且安裝java幫助文檔。3.配置類路徑。4.參照本章例子,創(chuàng)建一個名為HelloWorldApp的java application,在屏幕上簡單的顯示一句話“Hello World!”。2022/10/1035課后習題1.下載并且安裝Java Develop Kit(J5.下面這段程序,有哪些行是不符合java編程規(guī)范的? 1 /* 2 * Sample application using the simple text editor component that 3 * supports only one font. 4 * author Timothy Prinzing 5 * version 1.16 09/23/99 6 */ 7 8 package MyProject.theFirstApp; 9 class notepad extends JPanel 10 final int MAX_NUM=1000; 11 final long rate=999; 12 String STR; 13

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論