freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

在線(xiàn)圖書(shū)管理系統(tǒng)外文文獻(xiàn)原文及譯文-資料下載頁(yè)

2025-08-29 12:38本頁(yè)面

【導(dǎo)讀】garbagecollection.thanbenefit.

  

【正文】 求。有些語(yǔ)言提供了可移植性,垃圾收集器等等,但是,沒(méi)有提供一個(gè)大型的庫(kù),如果想要有奇特的繪圖功能,網(wǎng)絡(luò)連接功能和數(shù)據(jù)庫(kù)存取功能就必須自己動(dòng)手編寫(xiě)代碼。 Java 這種功能齊全的出色語(yǔ)言,具有高質(zhì)量的執(zhí)行環(huán)境以及龐大的庫(kù)。正是因?yàn)樗喾N優(yōu)勢(shì)于一身,所以對(duì)廣大的程序設(shè)計(jì)人員有著不可抗拒的吸引力。 簡(jiǎn)單性 人們希望構(gòu)建一個(gè)無(wú)需深?yuàn)W的專(zhuān)業(yè)訓(xùn)練就可以進(jìn)行編程的系統(tǒng),并且要符合 第 2 頁(yè) 共 5 頁(yè) 當(dāng)今的標(biāo)準(zhǔn)慣例。因此,盡管人們發(fā)現(xiàn) C++不太適用,但在設(shè)計(jì) Java 的時(shí)候還是盡可能地接近 C++,以便系統(tǒng)更易于理解。 Java 剔除了 C++中許多很少使用、難以理解、易混淆的特性。在目前看來(lái),這些特性帶來(lái)的麻煩遠(yuǎn)遠(yuǎn)多于其帶來(lái)的好處。 的確, Java 語(yǔ)法是 C++語(yǔ)法的一個(gè)“純凈版本。這里沒(méi)有頭文件、指針運(yùn)算(甚至指針語(yǔ)法)、結(jié)構(gòu)、聯(lián)合、操作符重載、虛基類(lèi)等等(請(qǐng)參閱本書(shū)各個(gè)章節(jié)給出的 C++注釋?zhuān)抢锉容^詳細(xì)地解釋了 Java 與 C++之間的區(qū)別)然而,設(shè)計(jì)者并沒(méi)有試圖清除 C++中所有不適當(dāng)?shù)奶匦?。例如?switch 語(yǔ)句的語(yǔ)法在 Java 中就沒(méi)有改變。如果知道 C++就會(huì)發(fā)現(xiàn)可以輕而易舉地將其轉(zhuǎn)換成 Java。 如果已經(jīng)習(xí)慣于使用可視化的編 程環(huán)境(例如39。Visual Basic),你就不會(huì)覺(jué)得 Java 簡(jiǎn)單了。 Java 有許多奇怪的語(yǔ)法(盡管掌握其要領(lǐng)并不需要很長(zhǎng)時(shí)間),更重要的是,使用 Java 需要自己編寫(xiě)大量的程序 o Visual Basic的魅力在于它的可視化設(shè)計(jì)環(huán)境幾乎自動(dòng)地為應(yīng)用程序提供了大量的基礎(chǔ)結(jié)構(gòu)。而使用Java 實(shí)現(xiàn)同樣的功能卻需要手工地編制代碼,通常代碼量還相當(dāng)大。然而,已經(jīng)有一些支持“拖放”風(fēng)格程序開(kāi)發(fā)的第三方開(kāi)發(fā)環(huán)境。 簡(jiǎn)單的另一個(gè)方面是小。 Java 的目標(biāo)之一是支持開(kāi)發(fā)能夠在小型機(jī)器上獨(dú)立運(yùn)行 的軟件?;镜慕忉?器以及類(lèi)支持大約僅為 40KB;再加上基礎(chǔ)的標(biāo)準(zhǔn)類(lèi)庫(kù)和對(duì)線(xiàn)程的支持(基本上是一個(gè)白包含的微內(nèi)核)大約需要增加 175KB。 在當(dāng)時(shí),這是一個(gè)了不起的成就。當(dāng)然,由于不斷的擴(kuò)展,類(lèi)庫(kù)已經(jīng)相當(dāng)龐大了?,F(xiàn)在有一個(gè)獨(dú)立的具有較小類(lèi)庫(kù)的 Java 微型版 (Java Micro Edition)用于嵌入式設(shè)備。 面向?qū)ο? 簡(jiǎn)單地講,面向?qū)ο笤O(shè)計(jì)是一種程序設(shè)計(jì)技術(shù)。它將重點(diǎn)放在數(shù)據(jù)(即對(duì)象)和對(duì)象的接口上。用木匠打一個(gè)比方,一個(gè)“面向?qū)ο蟮摹蹦窘呈冀K關(guān)注的是所制作的 椅子,第二位才是所使用的工具;一個(gè)非面向?qū)ο蟮摹?木匠首先考慮的是所用的工 具。在本質(zhì)上, Java 的面向?qū)ο竽芰εc C++是一樣的。 在過(guò)去的 30 年里,面向?qū)ο笠呀?jīng)證明了自身的價(jià)值,一種現(xiàn)代的程序設(shè)計(jì)語(yǔ)言不使用面向?qū)ο蠹夹g(shù)簡(jiǎn)直讓人難以置信。的確, Java 的面向?qū)ο筇匦耘c C++旗鼓相當(dāng)。 Java與 C++的主要不同點(diǎn)在于多繼承,在 Java,取而代之的是簡(jiǎn)單的接口概念,以及 Java 的元類(lèi) (metaclass)模型(有關(guān)這部分內(nèi)容將在第 5 章中討論)。 如果沒(méi)有使用面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言的經(jīng)驗(yàn),你一定要仔細(xì)閱讀第 4 章~第 6 章。這些章節(jié)解釋了什么是面向?qū)ο蟪绦?設(shè)計(jì)以及在煽程實(shí)現(xiàn)復(fù)雜的項(xiàng)目時(shí)為什么比傳統(tǒng)的像 C 或 Basic 這樣的面向過(guò)程的語(yǔ)言更加有效。 第 3 頁(yè) 共 5 頁(yè) 網(wǎng)絡(luò)技能 Java有一個(gè)擴(kuò)展的例程庫(kù),用于處理像 HTTP和 FTP這類(lèi)的 TCP/IP協(xié)議。 Java應(yīng)用程序能夠通過(guò) URL 打開(kāi)和訪(fǎng)問(wèn)網(wǎng)絡(luò)上的對(duì)象,其便捷程度就好像訪(fǎng)問(wèn)本地文件一樣。 人們已經(jīng)看到 Java 的網(wǎng)絡(luò)能力強(qiáng)大且易于使用。任何曾經(jīng)試圖使用其他語(yǔ)言進(jìn)行網(wǎng)絡(luò)編程的人都會(huì)驚呼 Java 竟然把類(lèi)似打開(kāi) socket 連接這類(lèi)繁重的任務(wù)都變得如此簡(jiǎn)單(在本書(shū)的卷 II 中介紹網(wǎng)絡(luò)連接)。另外,遠(yuǎn)程方法調(diào)用機(jī)制使 得分布式對(duì)象之間可以進(jìn)行通信(也將在卷 II 中介紹)。 健壯性 Java 的設(shè)計(jì)目標(biāo)之一在于使得 Java 編寫(xiě)的程序具有多方面的可靠性。 Java投入了大量的精力進(jìn)行早期的問(wèn)題檢測(cè)、后期動(dòng)態(tài)的(運(yùn)行時(shí))檢測(cè),并消除了有出錯(cuò)傾向的狀態(tài)。 Java 和 C++最大的不同在于 Java 采用的指針模型可以消除重寫(xiě)內(nèi)存和損壞數(shù)據(jù)的可能性。 這個(gè)特性非常有用。 Java 編譯器能夠檢測(cè)許多在其他語(yǔ)言中僅在運(yùn)行時(shí)刻才能夠檢測(cè)出來(lái)的問(wèn)題。至于第二點(diǎn),對(duì)于曾經(jīng)花費(fèi)幾個(gè)小時(shí)來(lái)檢查由于指針 bug 而引起內(nèi)存沖突的人來(lái)說(shuō),一定很喜歡 Java 的這一特性。 如果曾經(jīng)只使用過(guò) 39。Visual Basic 這類(lèi)沒(méi)有顯式指針的語(yǔ)言,你就會(huì)感覺(jué)這么說(shuō)似乎有些小題大做了。然而, C 程序員就沒(méi)有這樣幸運(yùn)了。他們需要利用指針存取字符串、數(shù)組、對(duì)象、甚至文件。在 Visual Basic 中,根本不必使用指針訪(fǎng)問(wèn)這些實(shí)體,也不必關(guān)心宥關(guān)內(nèi)存分配的問(wèn)題另一方面,在沒(méi)有指針的語(yǔ)言中,許多數(shù)據(jù)結(jié)構(gòu)很難實(shí)現(xiàn) o Java具有雙方的優(yōu)勢(shì)。它不需要使用指針構(gòu)造諸如字符串,數(shù)組這樣的結(jié)構(gòu)。如果必要的話(huà),它也能夠具有指針的能力,如鏈表。 Java 絕對(duì)是安全的,其原因是永遠(yuǎn)不會(huì)存取一個(gè)“壞的” 指針,造成內(nèi)存分配的錯(cuò)誤,也不必防范內(nèi)存泄漏。 體系結(jié)構(gòu)中立 編譯器生成一個(gè)體系結(jié)構(gòu)中立的目標(biāo)文件格式,這是一種縭譯過(guò)的代碼,只要有 Java 運(yùn)行系統(tǒng),就可以在許多處理器上運(yùn)行。 JaVa 編譯器通過(guò)生成與特定的計(jì)算機(jī) 體系結(jié)構(gòu)無(wú)關(guān)的字節(jié)碼指令來(lái)實(shí)現(xiàn)這一特性。精心設(shè)計(jì)的字節(jié)碼不僅可以很容易地在 任何機(jī)器上解釋執(zhí)行,而且還可以迅速地翻譯成本地機(jī)器的代碼。 這并不是什么新的思路。 30 多年以前. Niklaus Wirth 實(shí)現(xiàn)的原始 Pascal 以及 UCSD Pascal 系統(tǒng)都使用了這種技術(shù)。 當(dāng)然, 解釋字節(jié)碼肯定會(huì)比全速地運(yùn)行機(jī)器指令慢很多。所以說(shuō),這是不是一個(gè)好 第 4 頁(yè) 共 5 頁(yè) 的思路還很難講!然而,虛擬機(jī)有一個(gè)選項(xiàng),可以將使用最頻繁的字節(jié)碼序列翻譯成機(jī)器碼,這一過(guò)程被稱(chēng)為即時(shí)編譯。這一策略已經(jīng)證明十分有效,致使微軟的. NET 平臺(tái)也依賴(lài)于虛擬機(jī)。 虛擬機(jī)還有一些其他的優(yōu)點(diǎn)。虛擬機(jī)可以檢測(cè)指令序到的行為,以增強(qiáng)其安全性。有些程序還可以快速地生成字節(jié)碼,并動(dòng)態(tài)地增強(qiáng)所運(yùn)行程序的處理能力。 可移植性 與 C 和 C++不同, Java 規(guī)范中沒(méi)有“依賴(lài)具體實(shí)現(xiàn) 的地方?;緮?shù)據(jù)類(lèi)型的大小以及有關(guān)算法都做了明確的說(shuō)明。 例如 , Java 中的 int 永遠(yuǎn)為 32 位的整數(shù),而在 C/C++中, int 可能是 16位整數(shù)、 32位整數(shù),也可能是編譯器提供商指定的其他大小。惟一的限制只是 int 類(lèi)型的大小不能低于 short int,并且不能高于 long Java 中,數(shù)據(jù)類(lèi)型具有固定的大小,這消除了代碼移植時(shí)令人頭痛的主要問(wèn)題。二進(jìn)制數(shù)據(jù)以固定的格式進(jìn)行的存儲(chǔ)和傳輸,消除了字節(jié)順序的困擾。字符串是用標(biāo)準(zhǔn)的 Unicodc 格式存儲(chǔ)的。 作為系統(tǒng)組成部分的類(lèi)庫(kù),定義了可移植的接口。例如,有一個(gè)抽象的 Window 類(lèi)給出了在 UNIX、 Windows和 Macintosh 環(huán)境下的不同實(shí)現(xiàn)。凡是嘗試過(guò)的人都知道,要編寫(xiě)一個(gè)在 WindowS、Macintosh 和 lO 種不同風(fēng)格的、在 UNIX 上看起來(lái)都不錯(cuò)的程序有多么困難。 Java 就嘗試著做了這么一個(gè)壯舉,發(fā)布了一個(gè)將常用的用戶(hù)界面元素映射到不同平臺(tái)上的簡(jiǎn)單工具箱。遺憾的是,花費(fèi)了大量的心血,卻構(gòu)建了一個(gè)在各個(gè)平臺(tái)上都難以讓人接受的庫(kù)(面且,在不同平臺(tái)的圖形實(shí)現(xiàn)中有不同的 bug)。不過(guò),這畢竟是個(gè)開(kāi)端。對(duì)于許多應(yīng)用問(wèn)題來(lái)說(shuō),可移植性比華而不實(shí)的用戶(hù)界面更加重要而且這些應(yīng)用程序從 Java 的早期版本中獲 益匪淺。現(xiàn)在,用戶(hù)界面工具箱已經(jīng)完全重寫(xiě)了,不再依賴(lài)于主機(jī)的用戶(hù)接口?,F(xiàn)在的 Java 版本比早期版本更加穩(wěn)定,更加吸引人。 解釋型 Java 解釋器可以在任何移植了解釋器的機(jī)器上執(zhí)行 Java 字節(jié)碼。由于鏈接是一個(gè)增值且簡(jiǎn)便的過(guò)程,所以,開(kāi)發(fā)過(guò)程也變得更加快捷,更加具有探索性。 增值鏈接有其優(yōu)勢(shì),但給開(kāi)發(fā)過(guò)程帶來(lái)的好處顯然是言過(guò)其實(shí)了。事實(shí)上,早期的Java 開(kāi)發(fā)工具的速度相當(dāng)慢?,F(xiàn)在,使用即時(shí)編譯器將字節(jié)碼翻譯成機(jī)器碼大大提高速度。 多線(xiàn)程 多線(xiàn)程可以帶來(lái)更好的交互響應(yīng)和實(shí)時(shí)行為。 第 5 頁(yè) 共 5 頁(yè) 如果曾經(jīng)使用過(guò) 其他語(yǔ)言編寫(xiě)多線(xiàn)程的應(yīng)用程序,就會(huì)對(duì) Java 多線(xiàn)程處理的便捷性驚嘆不已。只要操作系統(tǒng)支持, Java 中的線(xiàn)程就可以利用多個(gè)處理器。在底層,主流平臺(tái)的線(xiàn)程實(shí)現(xiàn)機(jī)制各不相同, Java 并沒(méi)有花費(fèi)太大的力氣對(duì)此實(shí)現(xiàn)平臺(tái)無(wú)關(guān)性。在不同的機(jī)器上,只是調(diào)用多線(xiàn)程的代碼完全相同. Java 把多線(xiàn)程的實(shí)現(xiàn)交給了底層的操作系統(tǒng)或線(xiàn)程庫(kù)來(lái)完成。盡管如此,多線(xiàn)程編譯的簡(jiǎn)單性是 Java 成為頗具魅力的服務(wù)器端開(kāi)發(fā)語(yǔ)言的主要原因之一。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1