<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Unlike methods, a constructor cannot be abstract, static, final, native  or synchronized.

    1. A constructor is not inherited, so there is no need to declare it final

    2. As the same reason above, an abstract constructor could never be implemented.

    3. A constructor is always invoked with respect to an object, so it makes no sense for a constructor to be static.

    4. There is no practical need for a constructor to be synchronized, because it would lock the object under construction, which is normally not made available to other threads until all constructors for the object have completed their work.

    5. The lack of native constructors is an arbitrary language design choice that makes it easy for an implementation of the Java virtual machine to verify that superclass constructors are always properly invoked during object creation.

    翻譯如下:

    不同于方法,構(gòu)造器不能是abstract, static, final, native, strictfp, 或者synchronized的.

    1.構(gòu)造器不是通過繼承得到的,所以沒有必要把它聲明為final的。

    2.同理,一個抽象的構(gòu)造器將永遠不會被實現(xiàn)。(所以也不能聲明為abstract的)

    3.構(gòu)造器總是關(guān)聯(lián)一個對象而被調(diào)用,所以把它聲明為static是沒有意義的。

    4.沒有實際的需要把構(gòu)造器定義成同步的,因為它將會在構(gòu)造的時候鎖住該對象,直到所有的構(gòu)造器完成它們的工作,這個構(gòu)造的過程對其它線程來說,通常是不可訪問的。

    5.沒有本地的構(gòu)造器是任意一種語言的設(shè)計選擇,這樣會使得在創(chuàng)建對象的過程中JVM實現(xiàn)很容易去校驗父類的構(gòu)造器是否總是被正確地調(diào)用了。

    (本地化的方法情況特別復(fù)雜,所以JVM調(diào)用起來非常麻煩,需要考慮很多種情況,沒有native關(guān)鍵字的情況下,JVM實現(xiàn)起來比較容易。)

    PS:受俺導(dǎo)師的影響,第一次有這種沖動想去翻譯一些英文資料。雖然翻譯得很爛,但很欣慰。

    歡迎來訪!^.^!
    本BLOG僅用于個人學(xué)習(xí)交流!
    目的在于記錄個人成長.
    所有文字均屬于個人理解.
    如有錯誤,望多多指教!不勝感激!

    Feedback

    # re: 為什么構(gòu)造器不能是abstract, static, final, native or synchronized的?  回復(fù)  更多評論   

    2007-04-10 22:46 by 糖果
    學(xué)習(xí)中~~加油咯^-^

    # re: 為什么構(gòu)造器不能是abstract, static, final, native or synchronized的?  回復(fù)  更多評論   

    2007-04-20 09:27 by 馬嘉楠
    strictfp 雖然也不能用來修飾constructor(構(gòu)造函數(shù)),不過原文當(dāng)中并沒有提到,原文說的是native ,呵呵,可能是你的筆誤吧。


    --我也常有翻譯的沖動,^+^
    不使用native constructor(本地構(gòu)造函數(shù))是任何一種程序語言的設(shè)計選擇,因為這樣在對象創(chuàng)建過程中,校驗父類的構(gòu)造器是否總是被正確地調(diào)用,對于JVM的實現(xiàn)將會非常容易。



    PS:前一段忙就沒怎么來這里,你在吉林上學(xué)?還是家在吉林阿

    # re: 為什么構(gòu)造器不能是abstract, static, final, native or synchronized的?  回復(fù)  更多評論   

    2007-04-20 09:39 by 久城
    其實那段英文是在Matrix上看到的別人的一個回復(fù)。據(jù)說是某本書上的。strictfp還是第一次聽說,還不大了解。

    其實最后一句話我翻譯了好久,請教了身邊很多人。甚至到CSDN上發(fā)帖子問哈哈。到最后也沒確定下來。

    # re: 為什么構(gòu)造器不能是abstract, static, final, native or synchronized的?  回復(fù)  更多評論   

    2007-04-20 09:50 by 馬嘉楠
    strictfp 是用來精確浮點運算的

    strictfp可以修飾一個類、接口以及方法,但是不能對接口中的方法以及構(gòu)造函數(shù)聲明為strictfp的。

    如果聲明為strictfp,則在所聲明的范圍內(nèi)都將依照浮點規(guī)范IEEE-754來執(zhí)行,不會因為不同的硬件平臺等出現(xiàn)差異。

    更具體的你可以搜索以下

    上面一段英文是Java Language Specification Second Edition 中
    8.8.3節(jié) Constructor Modifiers 中的一段話

    # re: 為什么構(gòu)造器不能是abstract, static, final, native or synchronized的?  回復(fù)  更多評論   

    2007-04-20 09:52 by 久城
    收益!

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     

    Copyright © 久城

    主站蜘蛛池模板: 国产亚洲精品岁国产微拍精品| 妞干网免费观看视频| 婷婷亚洲天堂影院| 亚洲精华国产精华精华液好用| 99re6免费视频| 亚洲av网址在线观看| 久久精品国产影库免费看| 亚洲V无码一区二区三区四区观看| 精品免费久久久久国产一区| 亚洲国产一级在线观看| 一区二区视频免费观看| 曰韩亚洲av人人夜夜澡人人爽| 一个人看的免费视频www在线高清动漫| 亚洲国产成人爱av在线播放| 丝瓜app免费下载网址进入ios | 亚洲人成网站日本片| 成年免费大片黄在线观看岛国| 亚洲va在线va天堂成人| 日本最新免费不卡二区在线| 美女黄频视频大全免费的| 亚洲欧洲久久久精品| 久久青草91免费观看| 亚洲国产成人无码av在线播放| 在线观看免费a∨网站| 看Aⅴ免费毛片手机播放| 亚洲精品无码永久中文字幕| 三年片在线观看免费观看大全动漫| 亚洲福利电影在线观看| 97无码免费人妻超级碰碰夜夜| 四虎影视永久在线精品免费| 国产成A人亚洲精V品无码 | 亚洲性色精品一区二区在线| 男人的天堂亚洲一区二区三区 | 在线看片免费人成视频久网下载| 亚洲国产精品高清久久久| 69视频在线观看免费| 亚洲国产精品嫩草影院| 亚洲精品无码专区久久久| 美女被免费喷白浆视频| 色婷婷综合缴情综免费观看| 久久久久久a亚洲欧洲aⅴ|