LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Java語言開發(fā)工具特點(diǎn)簡介【轉(zhuǎn)】

admin
2010年8月18日 1:29 本文熱度 4160

一、Java語言特點(diǎn)

  Java是一種跨平臺(tái),適合于分布式計(jì)算環(huán)境的面向?qū)ο缶幊陶Z言。

  具體來說,它具有如下特性:

  簡單性、面向?qū)ο蟆⒎植际健⒔忉屝汀⒖煽俊踩⑵脚_(tái)無關(guān)、可移植、高性能、多線程、動(dòng)態(tài)性等。

  下面我們將重點(diǎn)介紹Java語言的面向?qū)ο蟆⑵脚_(tái)無關(guān)、分布式、多線程、可靠和安全等特性。

  1.面向?qū)ο?

  面向?qū)ο笃鋵?shí)是現(xiàn)實(shí)世界模型的自然延伸。現(xiàn)實(shí)世界中任何實(shí)體都可以看作是對(duì)象。對(duì)象之間通過消息相互作用。另外,現(xiàn)實(shí)世界中任何實(shí)體都可歸屬于某類事物,任何對(duì)象都是某一類事物的實(shí)例。如果說傳統(tǒng)的過程式編程語言是以過程為中心以算法為驅(qū)動(dòng)的話,面向?qū)ο蟮木幊陶Z言則是以對(duì)象為中心以消息為驅(qū)動(dòng)。用公式表示,過程式編程語言為:程序=算法+數(shù)據(jù);面向?qū)ο缶幊陶Z言為:程序=對(duì)象+消息。

  所有面向?qū)ο缶幊陶Z言都支持三個(gè)概念:封裝、多態(tài)性和繼承,Java也不例外。現(xiàn)實(shí)世界中的對(duì)象均有屬性和行為,映射到計(jì)算機(jī)程序上,屬性則表示對(duì)象的數(shù)據(jù),行為表示對(duì)象的方法(其作用是處理數(shù)據(jù)或同外界交互)。所謂封裝,就是用一個(gè)自主式框架把對(duì)象的數(shù)據(jù)和方法聯(lián)在一起形成一個(gè)整體。可以說,對(duì)象是支持封裝的手段,是封裝的基本單位。Java語言的封裝性較強(qiáng),因?yàn)镴ava無全程變量,無主函數(shù),在Java中絕大部分成員是對(duì)象,只有簡單的數(shù)字類型、字符類型和布爾類型除外。而對(duì)于這些類型,Java也提供了相應(yīng)的對(duì)象類型以便與其他對(duì)象交互操作。

  多態(tài)性就是多種表現(xiàn)形式,具體來說,可以用“一個(gè)對(duì)外接口,多個(gè)內(nèi)在實(shí)現(xiàn)方法”表示。舉一個(gè)例子,計(jì)算機(jī)中的堆棧可以存儲(chǔ)各種格式的數(shù)據(jù),包括整型,浮點(diǎn)或字符。不管存儲(chǔ)的是何種數(shù)據(jù),堆棧的算法實(shí)現(xiàn)是一樣的。針對(duì)不同的數(shù)據(jù)類型,編程人員不必手工選擇,只需使用統(tǒng)一接口名,系統(tǒng)可自動(dòng)選擇。運(yùn)算符重載(operatoroverload)一直被認(rèn)為是一種優(yōu)秀的多態(tài)機(jī)制體現(xiàn),但由于考慮到它會(huì)使程序變得難以理解,所以Java最后還是把它取消了。

  繼承是指一個(gè)對(duì)象直接使用另一對(duì)象的屬性和方法。事實(shí)上,我們遇到的很多實(shí)體都有繼承的含義。例如,若把汽車看成一個(gè)實(shí)體,它可以分成多個(gè)子實(shí)體,如:卡車、公共汽車等。這些子實(shí)體都具有汽車的特性,因此,汽車是它們的“父親”,而這些子實(shí)體則是汽車的“孩子”。Java提供給用戶一系列類(class),Java的類有層次結(jié)構(gòu),子類可以繼承父類的屬性和方法。與另外一些面向?qū)ο缶幊陶Z言不同,Java只支持單一繼承。

  2 平臺(tái)無關(guān)性

  Java是平臺(tái)無關(guān)的語言是指用Java寫的應(yīng)用程序不用修改就可在不同的軟硬件平臺(tái)上運(yùn)行。平臺(tái)無關(guān)有兩種:源代碼級(jí)和目標(biāo)代碼級(jí)。C和C++具有一定程度的源代碼級(jí)平臺(tái)無關(guān),表明用C或C++寫的應(yīng)用程序不用修改只需重新編譯就可以在不同平臺(tái)上運(yùn)行。

  Java主要靠Java虛擬機(jī)(JVM)在目標(biāo)碼級(jí)實(shí)現(xiàn)平臺(tái)無關(guān)性。JVM是一種抽象機(jī)器,它附著在具體操作系統(tǒng)之上,本身具有一套虛機(jī)器指令,并有自己的棧、寄存器組等。但JVM通常是在軟件上而不是在硬件上實(shí)現(xiàn)。(目前,SUN系統(tǒng)公司已經(jīng)設(shè)計(jì)實(shí)現(xiàn)了Java芯片,主要使用在網(wǎng)絡(luò)計(jì)算機(jī)NC上。

  另外,Java芯片的出現(xiàn)也會(huì)使Java更容易嵌入到家用電器中。)JVM是Java平臺(tái)無關(guān)的基礎(chǔ),在JVM上,有一個(gè)Java解釋器用來解釋Java編譯器編譯后的程序。Java編程人員在編寫完軟件后,通過Java編譯器將Java源程序編譯為JVM的字節(jié)代碼。任何一臺(tái)機(jī)器只要配備了Java解釋器,就可以運(yùn)行這個(gè)程序,而不管這種字節(jié)碼是在何種平臺(tái)上生成的。另外,Java采用的是基于IEEE標(biāo)準(zhǔn)的數(shù)據(jù)類型。通過JVM保證數(shù)據(jù)類型的一致性,也確保了Java的平臺(tái)無關(guān)性。

  Java的平臺(tái)無關(guān)性具有深遠(yuǎn)意義。首先,它使得編程人員所夢寐以求的事情(開發(fā)一次軟件在任意平臺(tái)上運(yùn)行)變成事實(shí),這將大大加快和促進(jìn)軟件產(chǎn)品的開發(fā)。其次Java的平臺(tái)無關(guān)性正好迎合了“網(wǎng)絡(luò)計(jì)算機(jī)”思想。如果大量常用的應(yīng)用軟件(如字處理軟件等)都用Java重新編寫,并且放在某個(gè)Internet服務(wù)器上,那么具有NC的用戶將不需要占用大量空間安裝軟件,他們只需要一個(gè)

  Java解釋器,每當(dāng)需要使用某種應(yīng)用軟件時(shí),下載該軟件的字節(jié)代碼即可,運(yùn)行結(jié)果也可以發(fā)回服務(wù)器。目前,已有數(shù)家公司開始使用這種新型的計(jì)算模式構(gòu)筑自己的企業(yè)信息系統(tǒng)。


3 分布式

  分布式包括數(shù)據(jù)分布和操作分布。數(shù)據(jù)分布是指數(shù)據(jù)可以分散在網(wǎng)絡(luò)的不同主機(jī)上,操作分布是指把一個(gè)計(jì)算分散在不同主機(jī)上處理。

  Java支持WWW客戶機(jī)/服務(wù)器計(jì)算模式,因此,它支持這兩種分布性。對(duì)于前者,Java提供了一個(gè)叫作URL的對(duì)象,利用這個(gè)對(duì)象,你可以打開并訪問具有相同URL地址上的對(duì)象,訪問方式與訪問本地文件系統(tǒng)相同。對(duì)于后者,Java的applet小程序可以從服務(wù)器下載到客戶端,即部分計(jì)算在客戶端進(jìn)行,提高系統(tǒng)執(zhí)行效率。

  Java提供了一整套網(wǎng)絡(luò)類庫,開發(fā)人員可以利用類庫進(jìn)行網(wǎng)絡(luò)程序設(shè)計(jì),方便得實(shí)現(xiàn)Java的分布式特性。

  4 可靠性和安全性

  Java最初設(shè)計(jì)目的是應(yīng)用于電子類消費(fèi)產(chǎn)品,因此要求較高的可靠性。Java雖然源于C++,但它消除了許多C++不可靠因素,可以防止許多編程錯(cuò)誤。首先,Java是強(qiáng)類型的語言,要求顯式的方法聲明,這保證了編譯器可以發(fā)現(xiàn)方法調(diào)用錯(cuò)誤,保證程序更加可靠;其次,Java不支持指針,這杜絕了內(nèi)存的非法訪問;第三,Java的自動(dòng)單元收集防止了內(nèi)存丟失等動(dòng)態(tài)內(nèi)存分配導(dǎo)致的問題;第四,Java解釋器運(yùn)行時(shí)實(shí)施檢查,可以發(fā)現(xiàn)數(shù)組和字符串訪問的越界,最后,Java提供了異常處理機(jī)制,程序員可以把一組錯(cuò)誤代碼放在一個(gè)地方,這樣可以簡化錯(cuò)誤處理任務(wù)便于恢復(fù)。

  由于Java主要用于網(wǎng)絡(luò)應(yīng)用程序開發(fā),因此對(duì)安全性有較高的要求。如果沒有安全保證,用戶從網(wǎng)絡(luò)下載程序執(zhí)行就非常危險(xiǎn)。Java通過自己的安全機(jī)制防止了病毒程序的產(chǎn)生和下載程序?qū)Ρ镜叵到y(tǒng)的威脅破壞。當(dāng)Java字節(jié)碼進(jìn)入解釋器時(shí),首先必須經(jīng)過字節(jié)碼校驗(yàn)器的檢查,然后,Java解釋器將決定程序中類的內(nèi)存布局,隨后,類裝載器負(fù)責(zé)把來自網(wǎng)絡(luò)的類裝載到單獨(dú)的內(nèi)存區(qū)域,避免應(yīng)用程序之間相互干擾破壞。最后,客戶端用戶還可以限制從網(wǎng)絡(luò)上裝載的類只能訪問某些文件系統(tǒng)。

  上述幾種機(jī)制結(jié)合起來,使得Java成為安全的編程語言。

  5 多線程

  線程是操作系統(tǒng)的一種新概念,它又被稱作輕量進(jìn)程,是比傳統(tǒng)進(jìn)程更小的可并發(fā)執(zhí)行的單位。

  C和C++采用單線程體系結(jié)構(gòu),而Java卻提供了多線程支持。

  Java在兩方面支持多線程。一方面,Java環(huán)境本身就是多線程的。若干個(gè)系統(tǒng)線程運(yùn)行負(fù)責(zé)必要的無用單元回收,系統(tǒng)維護(hù)等系統(tǒng)級(jí)操作;另一方面,Java語言內(nèi)置多線程控制,可以大大簡化多線程應(yīng)用程序開發(fā)。Java提供了一個(gè)類Thread,由它負(fù)責(zé)啟動(dòng)運(yùn)行,終止線程,并可檢查線程狀態(tài)。Java的線程還包括一組同步原語。這些原語負(fù)責(zé)對(duì)線程實(shí)行并發(fā)控制。利用Java的多線程編程接口,開發(fā)人員可以方便得寫出支持多線程的應(yīng)用程序,提高程序執(zhí)行效率。必須注意地是,Java的多線程支持在一定程度上受運(yùn)行時(shí)支持平臺(tái)的限制。例如,如果操作系統(tǒng)本身不支持多線程,Java的多線程特性可能就表現(xiàn)不出來。

  二、Java小程序和應(yīng)用程序

  用Java可以寫兩種類型的程序:小程序(又叫JavaApplet)和應(yīng)用程序(JavaApplication)。小程序是嵌入在HTML文檔中的Java程序;而Java應(yīng)用程序是從命令行運(yùn)行的程序。對(duì)Java而言,Java小程序的大小和復(fù)雜性都沒有限制。事實(shí)上,Java小程序有些方面比Java應(yīng)用程序更強(qiáng)大。但是由于目前Internet通訊速度有限,因此大多數(shù)小程序規(guī)模較小。小程序和應(yīng)用程序之間的技術(shù)差別在于運(yùn)行環(huán)境。

  Java應(yīng)用程序運(yùn)行在最簡單的環(huán)境中,它的唯一外部輸入就是命令行參數(shù)。另一方面,Java小程序則需要來自Web瀏覽器的大量信息:它需要知道何時(shí)啟動(dòng),何時(shí)放入瀏覽器窗口,何處,何時(shí)激活關(guān)閉。由于這兩種不同的執(zhí)行環(huán)境,小程序和應(yīng)用程序的最低要求不同。

  由于WWW使小程序的發(fā)布十分便利,因此小程序更適合作為Internet上的應(yīng)用程序。相反,非網(wǎng)絡(luò)系統(tǒng)和內(nèi)存較小的系統(tǒng)更適合用Java應(yīng)用程序而較少用Java小程序?qū)崿F(xiàn)。另外,Java應(yīng)用程序也很容易以Internet為基礎(chǔ)環(huán)境,事實(shí)上有些優(yōu)秀的Java應(yīng)用程序正是如此。


該文章在 2010/8/18 1:29:39 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
精品亚洲欧美在线看 | 精品国偷自产在线一区二区视频 | 天天夜夜综合色鬼久久 | 日韩精品一级一区 | 午夜性色福利免费版 | 亚洲欧美中文字幕在线一区一 |