午夜伦理在线-午夜伦理在线观看-午夜毛片免费看-午夜美女久久久久爽久久-午夜免费

Rss & SiteMap

曙海教育集團論壇 http://www.bjzhda.cn

曙海教育集團論壇
共1 條記錄, 每頁顯示 10 條, 頁簽: [1]
[瀏覽完整版]

標題:C++與Java語言及其開發(fā)工具 (2)

1樓
wangxinxin 發(fā)表于:2010-12-10 15:13:24

在Java中,對變量和方法的訪問控制是通過訪問修飾符來實現(xiàn)的。Java定義了4種
訪問級別:公共(public)、受保護(protected)、私有(private)和友好(friendly)。
公共類型的方法及變量可從任意類進行訪問;受保護類型的方法及變量只能從當前
類及其子類訪問;私有類型的方法及變量則只能從當前類訪問。如果未給出這三種
類型中任意一種的顯式說明 ,表明相應的方法或變量屬于"友好"類型,從而可由屬
于同一"包"(package)內(nèi)的所有類進行訪問。在Java內(nèi),"包"是一個單獨的編譯單
位,它是具有某種共性的類所組成的集合。通過定義包這個單位,可實現(xiàn)相關對象
之間的相互訪問,同時把這些對象與包之外的其它對象隔離。 

面向?qū)ο蟮木幊虣C制是Java的一個極為重要的方面。在Java內(nèi),如果不創(chuàng)建新類,
就無法創(chuàng)建應用程序。Java定義了一個特殊的超類Object,用戶創(chuàng)建的類都是Object
的子類。J ava程序既可在解釋器內(nèi)也可在瀏覽器內(nèi)運行,但無論采用哪種方式,都
必須先創(chuàng)建一個類實例,然后才能提交運行。此外,利用繼承機制,用戶還可充分利
用各種超類提供的功能。 

2. 與C++的差別 

盡管C++程序員可以相對容易地掌握Java編程,但他們?nèi)匀槐仨毧朔䦶腃++帶來的一
些舊習慣。Java取消了C++中的如下特性或功能: 

·結(jié)構(gòu)或指針 ·#define語句 

·指針 ·多重繼承 

·獨立的函數(shù) ·GOTO語句 

·操作符重載 ·自動類型轉(zhuǎn)換 

Java不支持結(jié)構(gòu)和指針,而且取消了C++中的#define或#typedef語句和頭文件。 

事實上,constant和typedef這兩條語句包含了#define語句的作用。現(xiàn)在,結(jié)構(gòu)和
聯(lián)合已經(jīng)被Java的類所代替。刪除這些特性的原因是:由于其希望維持與C語言的
向后兼容性,C ++的語言規(guī)范包含了大量冗余。比如,類實際上就已經(jīng)包括了結(jié)構(gòu)
和聯(lián)合的作用,因此這兩種數(shù)據(jù)結(jié)構(gòu)完全可以取消。關于#define語句,Java語言規(guī)
范的制訂者認為:盡管該語句的出發(fā)點是為了增強程序的可讀性,但實際效果卻恰
恰相反,它常常導致難讀的代碼,故應該予以取消。Java不再支持獨立函數(shù),因此任
何函數(shù)都必須封裝到某個類中。由于人們普遍認為, C++所用的超類是非常不穩(wěn)定
的,因此Java拋棄了C++中的多繼承并代之以接口。Java的接口指的是,在別的類看
來一個類所能實現(xiàn)的方法。它所顯示的只是一個類的方法或常量和變量 ,而不是
這個類的全部結(jié)構(gòu)。 

最后,Java還取消了C++中的GOTO語句、操作符重載、自動類型轉(zhuǎn)換及指針數(shù)據(jù)類
型。 GOTO語句引起的爭議已經(jīng)有很多年了,可一直陰魂不散,這跟某些程序員對該
語句一直情有獨鐘有關。C++仍然支持數(shù)據(jù)類型的自動轉(zhuǎn)換,但Java要求編程人員
顯式實現(xiàn)數(shù)據(jù)類型之間的轉(zhuǎn)換。自動數(shù)據(jù)類型轉(zhuǎn)換使得兩個數(shù)據(jù)類型互不兼容的
變量可以相互賦值,而不需要給出顯式說明。這有時會導致一些問題,其中最常見
的是精確度損失。比方說,如果把一個帶符號的32位整數(shù)賦給一個無符號整數(shù),則
所有的結(jié)果均為正數(shù)。Java的設計者們認為這很容易引起程序錯誤,從而決定不支
持這種轉(zhuǎn)換方式。 

某些C和C++程序員也許會覺得遺憾,因為Java不再支持他們非常愿意使用的指針類
型。但我們都知道,指針是調(diào)試程序時使人最感頭痛的地方之一。Java的設計者們
認為,由于Ja va取消結(jié)構(gòu)類型并且把數(shù)組封裝到了對象里面,指針已經(jīng)不再有用武
之地。但有些C和C++高級編程人員可能仍然需要一段時間才能走出指針的陰影。
因為指針的用法盡管很難掌握,可一旦掌握了其使用技巧,就會讓人感到它的功能
的確非常強大。作為一種面向分布式計算環(huán)境的編程語言,Java放棄對指針的支持
是非常順理成章的,因為只有這樣,才可能產(chǎn)生一種穩(wěn)可能產(chǎn)生一種穩(wěn)定、高效而
且安全的代碼。 

3. 內(nèi)存管理和線索 

Java語言帶來的好處還在于其自動內(nèi)存管理和線索控制。在C和C++中,內(nèi)存必須用
free、 malloc和其它許多內(nèi)存管理標準庫管理。因此,系統(tǒng)要了解何時分配、釋
放內(nèi)存并且跟蹤所有的內(nèi)存使用情況是非常困難的。如果要在C和C++中實現(xiàn)線索
功能,必須使用一個可對線索進行各種控制的類庫。而在Java中,盡管線索仍然需
要類的支持,但系統(tǒng)卻在語言級包括了線索同步機制。 

Java具有內(nèi)嵌的內(nèi)存管理程序。一旦創(chuàng)建了一個對象,Java的運行系統(tǒng)就開始跟蹤
這個對象,直到不再需要跟蹤該對象的所有引用為止。當某個對象不存在相應的引
用時,Java把這個對象放到一個用于垃圾搜集的棧內(nèi)。為在性能損失最小的情況下
提供自動垃圾搜集機制,這個垃圾搜集程序?qū)⒃诤笈_或作為低優(yōu)先級線索運行。這
樣,Java的垃圾搜集軟件將在前臺線索的執(zhí)行期間抽空執(zhí)行,或者在系統(tǒng)顯式提出
需要使用那些被已經(jīng)死亡的類所占用的內(nèi)存空間時執(zhí)行。 

從后臺內(nèi)存管理程序可以很明顯地看出,多線索的確可以增強Java環(huán)境的相對性能。
鑒于多線索的重要性,Java在語言級提供了線索同步機制,使多線索成為一種內(nèi)嵌
特性。Java 語言支持針對方法的同步修飾符,并通過該修飾符來指明線索的運行
順序。此外,Java還能控制方法與實例變量的相互作用機制,確保了各方法之間在
修改數(shù)據(jù)時不會產(chǎn)生沖突。 

Java的內(nèi)存管理和線索支持還具有使Java語言簡單化的作用。正是由于把內(nèi)存管
理任務嵌入到了Java環(huán)境,Java語言才可以取消指針數(shù)據(jù)類型、malloc和free函
數(shù)。這樣,程序員就可以把更多的時間化在真正的編程工作上,而不是去跟蹤調(diào)試
與內(nèi)存使用相關的程序錯誤。正是由于其多線索機制,Java才可以為一個可移植
的解釋系統(tǒng)提供較高的性能。 

Java語言非常適合于異構(gòu)網(wǎng)絡系統(tǒng)(尤其是Internet)上的高性能、分布式計算環(huán)
境。雖然個人機系統(tǒng)未必可以看作是高性能的,但目前的個人機已經(jīng)具有相當好
的性能。再者, 目前幾乎所有操作系統(tǒng)均提供了各種高級特性,如內(nèi)嵌的聯(lián)網(wǎng)功
能和真正的多任務、多線索支持等。然而在幾年前,這些功能還只有昂貴的UNIX
工作站才能提供。有了這些軟硬件基礎 ,加上Java的簡單易學及面向?qū)ο筇匦?
未來的程序員將可以在聯(lián)入網(wǎng)絡的個人機上開發(fā)適合于在各種硬件和軟件平臺上
發(fā)布的高級"內(nèi)容"。

共1 條記錄, 每頁顯示 10 條, 頁簽: [1]

Copyright © 2000 - 2009 曙海教育集團
Powered By 曙海教育集團 Version 2.2
Processed in .01465 s, 2 queries.
主站蜘蛛池模板: 国产成人亚洲精品大帝 | 国产一区 在线播放 | 999久久精品国产 | 高中生福利视频在线观看 | 国产1024在线永久免费观看 | 成人国产在线看不卡 | 日韩在线看片 | 国产丰满主播丝袜勾搭秀 | 玖玖爱在线观看 在线播放 玖玖草在线观看 | 嗯!啊!使劲用力在线观看 | 四川丰满护士毛茸茸 | 免费一级大黄特色大片 | 日本一本色道免费视频 | 一级做a爱久久久久久久 | 另类国产精品一区二区 | 日韩欧美黄色片 | 成年人在线观看视频网站 | 一区在线观看视频 | 免费看欧美一级a毛片 | 国内真实实拍伦视频在线观看 | 亚洲最大免费视频网 | aaaaaa国产毛片孕妇版 | 肉色呻吟胯下丝袜高跟视频 | 国产精品久久毛片 | 亚洲欧美日本国产综合在线 | 特黄特黄一级高清免费大片 | 最新亚洲精品国自产在线观看 | 全免费毛片在线播放 | 国内精品久久久久激情影院 | 欧美日韩成人在线观看 | 黄频在线播放观看 免费 | 日本一级特大毛片 | 国产精品无码久久综合网 | 欧美日韩免费一区二区三区 | 最近中国免费高清观看 | 嗯 用劲 好爽 好深 免费视频 | 九九视频免费在线观看 | 在线91精品亚洲网站精品成人 | 久久国产一区二区 | 国内精品久久久久鸭 | 欧美日韩色综合网站 |