Java應(yīng)用開發(fā)與實(shí)踐-面向?qū)ο蟪绦蛟O(shè)計(jì)概述_第1頁
Java應(yīng)用開發(fā)與實(shí)踐-面向?qū)ο蟪绦蛟O(shè)計(jì)概述_第2頁
Java應(yīng)用開發(fā)與實(shí)踐-面向?qū)ο蟪绦蛟O(shè)計(jì)概述_第3頁
Java應(yīng)用開發(fā)與實(shí)踐-面向?qū)ο蟪绦蛟O(shè)計(jì)概述_第4頁
Java應(yīng)用開發(fā)與實(shí)踐-面向?qū)ο蟪绦蛟O(shè)計(jì)概述_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

面向?qū)ο蟪绦蛟O(shè)計(jì)概述Java應(yīng)用開發(fā)與實(shí)踐Java程序設(shè)計(jì)基礎(chǔ)學(xué)習(xí)目標(biāo)了解C和Java兩種程序設(shè)計(jì)語言的區(qū)別了解Java平臺劃分及其特點(diǎn)熟悉Java常用的開發(fā)工具了解Java的運(yùn)行環(huán)境掌握J(rèn)ava程序的基本結(jié)構(gòu)熟悉Java程序的基本編程規(guī)范了解Java虛擬機(jī)的原理了解Java應(yīng)用程序的加載過程1.1兩種程序設(shè)計(jì)語言1.2Java概述1.3Java開發(fā)工具1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.5實(shí)訓(xùn)1搭建Java的運(yùn)行環(huán)境目錄1.1兩種程序設(shè)計(jì)語言面向過程,就是指從要解決的問題出發(fā),圍繞問題的解決過程分析問題。面向過程分析方法考慮的是問題的具體解決步驟(解決方法),以及解決問題所需要的數(shù)據(jù)(數(shù)據(jù)的表示),所以在面向過程程序設(shè)計(jì)中,重點(diǎn)是設(shè)計(jì)算法(解決問題的方法)和數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)的表示和存儲)。典型開發(fā)語言有Basic、Fortran、Pascal、C,它們都是面向過程的語言,其編程的主要思路專注于算法的實(shí)現(xiàn)。1.1.1面向過程的程序設(shè)計(jì)語言intmax=0,input;

scanf("%d",&input);while(input>0){//循環(huán)輸入input的值

if(input>max)

//輸入的值input大于最大值max

max=input;

//則max的值為input的值

scanf("%d",&input);

//繼續(xù)輸入input if(input==100) break;}printf("Themaxis%d",max);//打印最大值max的值1.1.1面向過程的程序設(shè)計(jì)語言面向過程:表述算法,定義數(shù)據(jù)結(jié)構(gòu)和程序流程。1.1兩種程序設(shè)計(jì)語言面向?qū)ο蟮幕舅枷胧且砸环N更接近人的思維方式的方法去分析問題,面向?qū)ο笤O(shè)計(jì)首先是分析問題由哪些部分組成,每部分的關(guān)系如何,然后再分析每一部分怎樣完成。面向?qū)ο笫且詫ο蠹捌湫袨闉橹行?,來考慮處理問題的思想體系和方法。面向?qū)ο笸ㄟ^使用對象、繼承、封裝、消息等基本概念來進(jìn)行程序設(shè)計(jì)。采用面向?qū)ο蠓椒ㄔO(shè)計(jì)的軟件,不僅易于理解,而且易于維護(hù)和修改。典型的開發(fā)語言有Java、C++、VB、VC、VJ++、Dephli、C#等等。1.1.2面向?qū)ο蟮某绦蛟O(shè)計(jì)語言Demo1_1demo=newDemo1_1();//demo是類的一個對象demo.output();//對象demo調(diào)用output()方法,輸出最大值publicclassDemo1_1{ voidoutput(){ …… }}1.1.2面向?qū)ο蟮某绦蛟O(shè)計(jì)語言面向?qū)ο螅和ㄟ^分析最大值的類Demo1_1由哪些部分組成,將這個Demo1_1類相關(guān)的屬性和方法封裝,再產(chǎn)生相應(yīng)的對象,通過對象去調(diào)用與需求相關(guān)的方法來解決問題。它體現(xiàn)了面向?qū)ο蟮脑O(shè)計(jì)思想。1.1兩種程序設(shè)計(jì)語言結(jié)構(gòu)化程序設(shè)計(jì)方法的強(qiáng)調(diào)程序設(shè)計(jì)風(fēng)格和程序結(jié)構(gòu)的規(guī)范化。面向?qū)ο蟮某绦蛟O(shè)計(jì)的方式則是建立在結(jié)構(gòu)化程序設(shè)計(jì)基礎(chǔ)上,采用面向?qū)ο蟆⑹录?qū)動編程機(jī)制。它以類作為構(gòu)造程序的基本單位,圍繞著對象的抽象性、繼承性、多態(tài)性和封裝性的特征開發(fā)設(shè)計(jì)程序。學(xué)習(xí)Java語言的最大難點(diǎn)就是從面向過程到面向?qū)ο笏悸泛娃D(zhuǎn)變。用Java進(jìn)行程序設(shè)計(jì)必須將自己的思想轉(zhuǎn)入到面向?qū)ο蟮氖澜?,以面向?qū)ο笫澜绲乃季S方式來思考問題。1.1.3從C語言到Java語言設(shè)計(jì)的轉(zhuǎn)變1.2Java概述1.2.1Java平臺劃分JavaEEJavaSEJavaMEJavaPlatform,EnterpriseEditionJavaPlatform,StandardEditionJavaPlatform,MicroEdition企業(yè)級桌面級嵌入式系統(tǒng)級包含JavaSE,Jsp(JavaServerPage),Servlet,EJB(EnterpriseJavaBean),JTS(JavaTransactionService),JavaMail,JMS(JavaMessageService)主要用于開發(fā)分布式的、服務(wù)器端的多層結(jié)構(gòu)的應(yīng)用系統(tǒng),如電子商務(wù)網(wǎng)站包含JavaJDK,運(yùn)行時(Runtime)和API主要用于開發(fā)桌面的應(yīng)用,如小的桌面應(yīng)用程序、游戲主要用于開發(fā)電子產(chǎn)品,如移動電話,數(shù)字機(jī)頂盒,汽車導(dǎo)航系統(tǒng)1.2.2Java的特點(diǎn)使用簡單的語言Java沿用了C/C++的語法規(guī)則,因而C++程序員初次接觸Java語言,就會感到很熟悉。從某種意義上講,Java語言是C及C++語言的一個變種,因此,C++程序員可以很快地掌握J(rèn)ava編程技術(shù)。Java將C/C++中的某些復(fù)雜的特征去除,如指針、結(jié)構(gòu)、goto語句,動態(tài)內(nèi)存的回收等等。另外,Java提供了豐富的類庫,可以幫助我們很方便的開發(fā)Java程序。1.2Java概述1.2.2Java的特點(diǎn)2.面向?qū)ο蟮恼Z言 Java是一個純粹的面向?qū)ο缶幊陶Z言,面向?qū)ο罂梢哉f是Java最重要的特性,所以它支持繼承、重載、多態(tài)等面向?qū)ο蟮奶匦?。Java語言的設(shè)計(jì)是完全面向?qū)ο蟮?它不支持類似C語言那樣的面向過程的程序設(shè)計(jì)技術(shù)。C++不是一個純的面向?qū)ο箝_發(fā)工具,其包容C。1.2.2Java的特點(diǎn)3.解釋執(zhí)行的語言

Java代碼是解釋執(zhí)行的,我們使用Java編譯器將Java代碼編譯成字節(jié)碼,這是一種中間代碼,然后由Java解釋器解釋執(zhí)行。而C++程序是編譯執(zhí)行的,C++程序代碼被編譯為本地機(jī)器指令,然后執(zhí)行。1.2.2Java的特點(diǎn)4.健壯性語言 Java是一種強(qiáng)類型的語言,其類型檢查比C++還要嚴(yán)格。類型檢查幫助我們檢查出許多開發(fā)早期出現(xiàn)的錯誤;Java語言提供的垃圾回收機(jī)制和例外處理機(jī)制,解決了C++中最頭疼的內(nèi)存泄漏問題;Java語言去除了容易出錯的指針,保證了程序的安全運(yùn)行。1.2.2Java的特點(diǎn)5.安全的語言

一方面,Java去除了指針,使得程序不能夠直接訪問內(nèi)存(內(nèi)存的分配和分布由Java環(huán)境透明控制),另一方面,Java解釋執(zhí)行機(jī)制,使得程序的執(zhí)行在java.exe/JVM的監(jiān)控之下,所以在網(wǎng)絡(luò)環(huán)境下可以保證系統(tǒng)的安全。例如:刪除文件,訪問本地網(wǎng)絡(luò)資源等操作都是被禁止的。1.2.2Java的特點(diǎn)6.與平臺無關(guān)的語言 Java作為一種網(wǎng)絡(luò)語言,其源代碼被編譯成一種結(jié)構(gòu)中立的中間文件格式。只要有Java運(yùn)行系統(tǒng)的機(jī)器都能執(zhí)行這種中間代碼。Java源程序被編譯成一種與機(jī)器無關(guān)的字節(jié)碼格式,在Java虛擬機(jī)上運(yùn)行。在Java語言中對數(shù)據(jù)類型的大小作了統(tǒng)一規(guī)定,不會應(yīng)為機(jī)器不同或編譯器不同而使用不同的寬度,這樣就保證了代碼的可移植性。1.2.2Java的特點(diǎn)7.支持多線程的語言 Java語言的一個重要特性就是在語言級支持多線程的程序設(shè)計(jì)。因?yàn)閃indows操作系統(tǒng)不支持多線程,所以Java得最早應(yīng)用是在Unix上,后來才將Java移植到Windows平臺上。1.2.3Java的主要應(yīng)用領(lǐng)域大型企業(yè)級應(yīng)用;2.大型網(wǎng)站;3.電子政務(wù);4.游戲;5.嵌入式設(shè)備及消費(fèi)類電子產(chǎn)品;1.2Java概述1.3.1JDK簡介JDK:JavaDevelopKit,Java開發(fā)工具包。開發(fā)Java程序必須有Java開發(fā)環(huán)境,即JDK開發(fā)工具包,這個工具包包含了編譯、運(yùn)行、調(diào)試等關(guān)鍵的命令。JDK包含的基本組件包括:

javac–編譯器,將源程序轉(zhuǎn)成字節(jié)碼

jar–打包工具,將相關(guān)的類文件打包成一個文件

javadoc–文檔生成器,從源碼注釋中提取文檔

jdb–debugger,查錯工具JDK中還包括完整的JRE(JavaRuntimeEnvironment,Java運(yùn)行環(huán)境),也被稱為privateruntime。包括了用于產(chǎn)品環(huán)境的各種庫類,以及給開發(fā)員使用的補(bǔ)充庫,如國際化的庫、IDL庫。1.3Java開發(fā)工具1.3.1JDK簡介 JDK由一個標(biāo)準(zhǔn)類庫和一組建立,測試及建立文檔的Java實(shí)用程序組成。其核心JavaAPI是一些預(yù)定義的類庫,開發(fā)人員需要用這些類來訪問Java語言的功能。JavaAPI包括一些重要的語言結(jié)構(gòu)以及基本圖形,網(wǎng)絡(luò)和文件I/O。一般來說,JavaAPI的非I/O部分對于運(yùn)行Java的所有平臺是相同的,而I/O部分則僅在通用Java環(huán)境中實(shí)現(xiàn)。1.3.1JDK簡介安裝JDK后的JDK目錄1.3.1JDK簡介JDK實(shí)用程序,工具庫中有七種主要程序。Javac:Java編譯器,將Java源代碼轉(zhuǎn)換成字節(jié)碼。Java:Java解釋器,直接從類文件執(zhí)行Java應(yīng)用程序字節(jié)代碼。appletviewer:小程序?yàn)g覽器,一種執(zhí)行HTML文件上的Java小程序的Java瀏覽器。Javadoc:根據(jù)Java源碼及說明語句生成HTML文檔。Jdb:Java調(diào)試器,可以逐行執(zhí)行程序,設(shè)置斷點(diǎn)和檢查變量。Javah:產(chǎn)生可以調(diào)用Java過程的C過程,或建立能被Java程序調(diào)用的C過程的頭文件。Javap:Java反匯編器,顯示編譯類文件中的可訪問功能和數(shù)據(jù),同時顯示字節(jié)代碼含義。JDK文件結(jié)構(gòu)1.4.1創(chuàng)建Java文件/***帶標(biāo)準(zhǔn)輸出的最小樣本程序HelloWorld:向控制臺輸出Helloworld!的應(yīng)用程序*/publicclassHelloWorld{ publicstaticvoidmain(String[]args){ System.out.println("Helloworld!");//控制臺輸出Helloworld! }}1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.4.2編譯Java文件Java源程序編寫后,要使用Java編譯器(javac.exe)將Java源程序編譯成字節(jié)碼文件。編譯時首先讀入Java源程序,然后進(jìn)行語法檢查,如果出現(xiàn)問題就終止編譯。語法檢查通過后,生成可執(zhí)行程序代碼即字節(jié)碼,字節(jié)碼文件名和源文件名相同,擴(kuò)展名為.class。打開命令提示符窗口(MS-DOS窗口)進(jìn)入Java源程序所在路徑G:\JavaUnit。鍵入編譯器文件名和要編譯的源程序文件名,具體如下:

javacHelloWorld.java1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.4.3運(yùn)行class文件在控制臺命令提示符后輸入“javaHelloWorld”命令并按下Enter鍵,這樣會執(zhí)行這個Java程序,運(yùn)行結(jié)果會輸出一句“helloworld”1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.4.4認(rèn)識JVMJVM是JavaVirtualMachine(Java虛擬機(jī))的縮寫,JVM是一種用于計(jì)算設(shè)備的規(guī)范,它是一個虛構(gòu)出來的計(jì)算機(jī),是通過在實(shí)際的計(jì)算機(jī)上仿真模擬各種計(jì)算機(jī)功能來實(shí)現(xiàn)的。Java語言使用Java虛擬機(jī)屏蔽了與具體平臺相關(guān)的信息,使得Java語言編譯程序只需生成在Java虛擬機(jī)上運(yùn)行的目標(biāo)代碼(字節(jié)碼),就可以在多種平臺上不加修改地運(yùn)行。Java虛擬機(jī)在執(zhí)行字節(jié)碼時,把字節(jié)碼解釋成具體平臺上的機(jī)器指令執(zhí)行。JVM對其實(shí)現(xiàn)的某些方面給出了具體的定義,特別是對Java可執(zhí)行代碼,即字節(jié)碼(Bytecode)的格式給出了明確的規(guī)格。1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序JVM運(yùn)行原理示意圖1.4.5Java編程規(guī)范包名:包名是全小寫的名詞,中間可以由點(diǎn)分隔開,例如:Java.awt.event;類名:首字母大寫,若類名由幾個單詞構(gòu)成,那么把它們緊靠到一起(也就是說,不要用下劃線來分隔名字)。此外,每個嵌入單詞的首字母都采用大寫形式。例如:classAllTheColorsOfTheRainbow接口名:命名規(guī)則與類名相同,例如interfaceCollection方法名:往往由多個單詞合成,第一個單詞通常為動詞,首字母小寫,中間的每個單詞的首字母都要大寫,例如:voidchangeTheHueOfTheColor(intnewHue)1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.4.5Java編程規(guī)范變量名:首字母小寫,一般為名詞,例如:intanIntegerRepresentingColors常量名:基本數(shù)據(jù)類型的常量名為全大寫,如果是由多個單詞構(gòu)成,可以用下劃線隔開,例如:intYEAR,intWEEK_OF_MONTH;如果是對象類型的常量,則是大小寫混合,由大寫字母把單詞隔開。1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.4.6Java幫助文檔Java中所有類庫的介紹都保存在Java幫助文檔(API文檔)中,程序員在編程過程中,必須查閱該幫助文檔,了解系統(tǒng)提供的類的功能、成員方法、成員變量等等信息以后,才能夠更好的編程。同時,Java開發(fā)工具包(JDK)提供了"java"、"javac"、"Javadoc"、"appletviewer"等命令,在Java幫助文檔中也對此進(jìn)行了詳細(xì)的介紹。對于初學(xué)者,或者英語不好的學(xué)習(xí)者,可以先看看中文版的,在文檔的左側(cè),上一部分有很多java包,如果你要查看每個包里都有哪些類,接口,直接點(diǎn)擊就可以了。1.4帶標(biāo)準(zhǔn)輸出的最小樣本程序1.4.7Java注釋單行注釋:從“//”開始到本行結(jié)束的內(nèi)容都是注釋;多行注釋:在“/*”和“*/”之間的所有內(nèi)容都是注釋;文檔注釋:在注釋方面Java提供一種C/C++所不具有的文檔注釋方式,凡是在“/**”和“*/”之間的內(nèi)容都是文檔注釋;通過在命令行下面運(yùn)行"javadoc-d.Test.Java",就生成了介紹類DocTest的index.html文件,DocTest.Java文件中的

溫馨提示

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

評論

0/150

提交評論