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

正文內(nèi)容

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

2025-08-29 12:38本頁面

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

  

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