java語言-第一章_第1頁
java語言-第一章_第2頁
java語言-第一章_第3頁
java語言-第一章_第4頁
java語言-第一章_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Java 語言程序設(shè)計(jì)第一章 緒論教材n書名:java程序設(shè)計(jì)n出版社: 北方交大出版社 n作者:蔡翠平 唐大仕n定價(jià):29.00元教材n書名:Java語言程序設(shè)計(jì) n出版社: 清華出版社 n作者:郎波n定價(jià):38.00元Java能干些什么?Java發(fā)展史nSun的Java語言開發(fā)小組成立于1991年,其目的是開拓消費(fèi)類電子產(chǎn)品市場(chǎng), 領(lǐng)導(dǎo)人James Gosling決定主要以C+為基礎(chǔ)進(jìn)行新語言的設(shè)計(jì),從而創(chuàng)建了Oak。n1994年P(guān)atrick Naughton和James Gosling完成了Web Runner的開發(fā)工作。n1996年1月Sun發(fā)布了第一個(gè)Java開發(fā)工具JDK1.0。

2、1998年12月Sun發(fā)布了Java2平臺(tái)。Java技術(shù)體系nJ2SE(Java 2 Platform Standard Edition):開發(fā)桌面和低端商務(wù)應(yīng)用。主要包括SDK和JRE。 nJ2EE(Java 2 Platform Enterprise Edition) :面向企業(yè)級(jí)和高端服務(wù)器的Internet應(yīng)用開發(fā)。包括:EJB、Java Servlets API、JSP。 nJ2ME(Java 2 Platform Micro Edition) :針對(duì)消費(fèi)類電子設(shè)備的一組技術(shù)規(guī)范。什么是Java技術(shù)?n將源程序翻譯成機(jī)器的可執(zhí)行代碼有兩種方式:編譯和解釋。nJava被稱作“半編譯、半

3、解釋”的程序設(shè)計(jì)語言。n由編譯器生成的中間代碼稱作“字節(jié)碼”(Bytecode),它是與平臺(tái)無關(guān)的代碼,不能直接運(yùn)行,需要在Java虛擬機(jī)(Java Virtual Machine, JVM)上運(yùn)行。什么是Java技術(shù)?XP二進(jìn)制二進(jìn)制源源程程序序Java編譯器編譯器XPLinux中間碼中間碼LinuxJava解釋器解釋器源源程程序序LinuxXP編譯器編譯器二進(jìn)制二進(jìn)制Java運(yùn)行系統(tǒng)編譯編譯,沒有絕對(duì)地址沒有絕對(duì)地址調(diào)入包調(diào)入包,繼承所用道繼承所用道的所有類的所有類, 內(nèi)存分配內(nèi)存分配確定確定,編程真正可執(zhí)編程真正可執(zhí)行的機(jī)器碼行的機(jī)器碼 Java源程序源程序(.java文件文件)Java

4、編譯器編譯器Java Bytecode(.class文件文件)系統(tǒng)執(zhí)行平臺(tái)系統(tǒng)執(zhí)行平臺(tái)Bytecode 解釋器解釋器類裝配器類裝配器字節(jié)碼校驗(yàn)器字節(jié)碼校驗(yàn)器不存在偽造的指針不存在偽造的指針不違反訪問權(quán)限不違反訪問權(quán)限不非法訪問對(duì)象不非法訪問對(duì)象不導(dǎo)致操作棧溢出不導(dǎo)致操作棧溢出 Java 虛擬機(jī)虛擬機(jī)Java的特點(diǎn)n簡(jiǎn)單性:去掉了指針、多重繼承和運(yùn)算符重載,內(nèi)存由系統(tǒng)自動(dòng)管理,并提供了豐富的類庫。n面向?qū)ο螅杭兇獾拿嫦驅(qū)ο缶幊陶Z言。n分布式特征:支持?jǐn)?shù)據(jù)分布和操作分布。n半編譯、半解釋特征Java的特點(diǎn)n健壯性:自動(dòng)垃圾回收、異常處理、嚴(yán)格的類型檢查。n安全性n體系結(jié)構(gòu)中立n可移植性n高性能n多

5、線程n動(dòng)態(tài)特征面向結(jié)構(gòu)程序設(shè)計(jì)n面向結(jié)構(gòu)的程序設(shè)計(jì)n特點(diǎn):自頂向下、逐步求精。采用模塊分解與功能抽象,分而治之。n舉例:學(xué)生成績(jī)管理。n優(yōu)點(diǎn):將一個(gè)復(fù)雜的系統(tǒng)分解成若干易于控制和處理的子系統(tǒng),便于開發(fā)和維護(hù)。n缺點(diǎn):可重用性差、數(shù)據(jù)安全性差、難以開發(fā)大型軟件和圖形界面的應(yīng)用軟件。面向?qū)ο蟪绦蛟O(shè)計(jì)n面向?qū)ο蟮某绦蛟O(shè)計(jì)n特點(diǎn):符合人類的認(rèn)識(shí)事物的方式。1.優(yōu)點(diǎn):(1)程序模塊間的關(guān)系更為簡(jiǎn)單,程序模塊的獨(dú)立性、數(shù)據(jù)的安全性就有了良好的保障。(2)通過繼承與多態(tài)性,可以大大提高程序的可重用性,使得軟件的開發(fā)和維護(hù)都更為方便。面向?qū)ο蟪绦蛟O(shè)計(jì)n 類忽略事物的非本質(zhì)特征,只注意那些與當(dāng)前目標(biāo)有關(guān)的本質(zhì)特

6、征,從而找出事物的共性,把具有共同性質(zhì)的事物劃分為一類,得出一個(gè)抽象的概念。n 對(duì)象代表現(xiàn)實(shí)世界中的實(shí)體,是該類的實(shí)例。屬性 1方法 1屬性 3方法 2抽象n考察特定應(yīng)用程序相關(guān)問題的某些方面的過程n屬性:對(duì)象的特征,也稱為特性n方法/函數(shù):對(duì)象執(zhí)行的活動(dòng)繼承繼承繼承是允許重用現(xiàn)有類來構(gòu)造新類的特性。從一個(gè)舊類派生派生一個(gè)新類的的機(jī)制稱為繼承。動(dòng)物動(dòng)物汽車類車的顏色車牌加油駕駛維修小汽車類坐的人數(shù)美容車的顏色車牌加油駕駛維修繼承面向?qū)ο蟪绦蛟O(shè)計(jì)n多態(tài):某類的對(duì)象在接收同樣的消息時(shí),所作出的相應(yīng)不同。動(dòng)物-捕食與C+的一些區(qū)別n不再有#include 和#define 等預(yù)處理功能(Java提供

7、豐富的程序包)n不再有struct、union及typedefn不再有指針、不再有多重繼承n不再有g(shù)oton不再有操作符重載(Operatior Overloading)n取消自動(dòng)類型轉(zhuǎn)換,要求強(qiáng)制轉(zhuǎn)換一個(gè)Java的簡(jiǎn)單程序import java.io.*;public class HelloWorldApp public static void main(String args) System.out.println(Hello World); 1.5 環(huán)境的安裝nJDK:sun公司提供的免費(fèi)Java開發(fā)工具?,F(xiàn)用到的版本一般為j2sdk-1_4_2。n集成的java開發(fā)環(huán)境,如:Jcrea

8、tor、JBuilder等等。1.5 JDK的安裝n安裝JDK。n設(shè)置環(huán)境變量:path中添加“/bin” 如:;c:jdk1.4.2bin新建classpath并添加“/lib” 如:.;c:jdk1.4.2lib(classpath路徑中不允許出現(xiàn)空格和中文!)程序編輯區(qū)程序編輯區(qū)編譯結(jié)果區(qū)編譯結(jié)果區(qū)運(yùn)行結(jié)果區(qū)運(yùn)行結(jié)果區(qū)Application和Applet程序n根據(jù)結(jié)構(gòu)和運(yùn)行環(huán)境的不同,Java程序可以分成兩類:Java application和Java Applet。nJava application是完整的程序,需要獨(dú)立的解釋器來解釋運(yùn)行;nJava Applet嵌在HTML中的非獨(dú)立

9、程序,由Web瀏覽器內(nèi)部包含的Java解釋器來解釋執(zhí)行。2.1.1 Application程序import java.io.*;public class HelloWorldApp public static void main(String args) System.out.println(Hello World); nJava程序中可以定義多個(gè)類,每個(gè)類可以定義多個(gè)方法,但是最多只能有一個(gè)公共類。main()也只能有一個(gè)!2.1.2 Applet程序import java.awt.*; /awt抽象窗口工具集import java.applet.*;public class HelloWo

10、rldApp extends Applet public void paint(Graphics g) g.drawString(“Hello World!”,20,20); n源程序編寫完成后,經(jīng)過半編譯產(chǎn)生字節(jié)碼。 c:javac HelloWorldApp.java An Applet 運(yùn)行方式:c:appletviewer hello.html 或則在IE中瀏覽作業(yè):1、安裝Java的開發(fā)環(huán)境:JDK和JCreator;2、運(yùn)行和調(diào)試下列代碼: import java.io.*;public class HelloWorldApp public static void main(String args) System.out.println(Hello World); main() float math,english; scanf(“%f,%f”,&math,&english); printf(“ sum=%f”,sum(math,english);float sum(float a,float

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論