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

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

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

    隨筆 - 17  文章 - 49  trackbacks - 0
    <2006年8月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(1)

    隨筆分類(17)

    隨筆檔案(17)

    相冊(cè)

    最新隨筆

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    道虎紋: 靜態(tài)引入 機(jī)制

    ?

    管中窺虎

    在學(xué)習(xí) java 1.5 的過(guò)程中,我使用了 sun 公布的 tutorial ,這份文檔寫的比較詳盡易明,但是對(duì)于想快速了解 tiger 而且具有較好 java 基礎(chǔ)的人來(lái)說(shuō),大篇幅的英文文檔是比較耗時(shí)間和非必需的,所以我將會(huì)歸納這份文檔的主要內(nèi)容,在保證理解的底線上,盡力減少閱讀者需要的時(shí)間。

    ?

    在以下地址可以進(jìn)入各新增語(yǔ)言特色介紹以及下載相關(guān)文檔(若有)。

    http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html

    ?

    2006 8 17 星期四

    Static import

    ?

    要使用一個(gè)類的靜態(tài)成員,就要添加上類的名稱,比如:

    double ?r? = ?Math.cos(Math.PI? * ?theta);

    // theta是一個(gè)數(shù)值變量,不是外部static?成員,原文并未注明。

    為了擺脫這些類名,有些程序員會(huì)把靜態(tài)成員放到一個(gè)接口里然后去實(shí)現(xiàn)這個(gè)接口,這個(gè)可不好。實(shí)際上,這樣做已經(jīng)糟糕到有幸成為了反模式:

    Constant Interface Antipattern 。(參加 Effective java Item 17 一個(gè)類用別的類的靜態(tài)成員是實(shí)現(xiàn)的細(xì)節(jié),而當(dāng)這個(gè)類實(shí)現(xiàn)這樣的接口時(shí),這個(gè)接口就成為了這個(gè)類的接口的一部分,而實(shí)現(xiàn)細(xì)節(jié)是不應(yīng)該漏入到 public 的接口中。

    static import 可以讓一個(gè)類可以不需要指定類名地使用靜態(tài)成員,而且不需繼承額外的接口,它引入了這些成員,可以單獨(dú)地或者全體引入:

    import ? static ?java.lang.Math.PI;

    import ? static ?java.lang.Math. * ;

    然后就可以簡(jiǎn)潔地使用它們:

    ?

    double ?r? = ?cos(PI? * ?theta);

    ?

    static import 和以前的 import 類似, import 從包里引入 class, static import 從類里引入成員。

    又到了經(jīng)典一問(wèn):何時(shí)該用這個(gè)新特色?

    要很謹(jǐn)慎地使用!只有當(dāng)你不用它就被迫要么聲明外部 static 成員的本地副本要么就墮落到那個(gè)反模式中的時(shí)候,你才應(yīng)該用它,換言之,當(dāng)你需要頻繁地使用某一兩個(gè)類的靜態(tài)成員時(shí)才應(yīng)該使用 static import 。濫用的后果就是讓你的代碼可讀性變差,命名空間被大量的引入的靜態(tài)成員所污染。若干星期后,連你自己都讀得不明不白。而且如果只是用得到其中的一兩個(gè)成員,就不要用批量的引入了。

    ?

    posted on 2006-08-17 18:10 Ye Yiliang 閱讀(1149) 評(píng)論(4)  編輯  收藏 所屬分類: Java

    FeedBack:
    # re: 第五道虎紋:靜態(tài)引入機(jī)制 2006-08-17 18:37 escout
    這種用法在.net2.0之中好像就有了  回復(fù)  更多評(píng)論
      
    # re: 第五道虎紋:靜態(tài)引入機(jī)制 2006-08-17 19:00 Ye Yiliang
    好的語(yǔ)法元素,總會(huì)在主流語(yǔ)言間互相學(xué)習(xí)和復(fù)制,呵呵@escout
      回復(fù)  更多評(píng)論
      
    # re: 第五道虎紋:靜態(tài)引入機(jī)制 2006-08-17 19:24 oliver456
    你寫的一系列的關(guān)于java tiger 的新語(yǔ)法、特征寫得很好,我在大四的時(shí)候,考java認(rèn)證的時(shí)候,就是考的scjp5.0(里面全java tiger的新語(yǔ)法等 ),現(xiàn)在又一次學(xué)習(xí)!不過(guò)你還是要進(jìn)一步深入~~~~  回復(fù)  更多評(píng)論
      
    # re: 第五道虎紋:靜態(tài)引入機(jī)制 2006-08-17 20:03 Ye Yiliang
    嗯,的確還是很淺薄,而且也不是自己寫的,是翻譯和一些簡(jiǎn)化 :p@oliver456
      回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 亚洲日韩精品A∨片无码| 国产亚洲视频在线观看| 免费网站看av片| 亚洲国产成人精品女人久久久 | 猫咪免费人成在线网站 | 亚洲精品在线视频观看| 99re8这里有精品热视频免费| 四虎免费久久影院| 亚洲精品自偷自拍无码| 99久久国产热无码精品免费| 色婷婷六月亚洲婷婷丁香| 三级网站免费观看| 久久久久亚洲精品天堂久久久久久| 男男gay做爽爽的视频免费| 免费鲁丝片一级观看| 亚洲一级特黄特黄的大片| 1000部拍拍拍18勿入免费视频软件| 亚洲va在线va天堂va不卡下载| a级毛片免费全部播放无码| 自拍偷自拍亚洲精品第1页| 一边摸一边爽一边叫床免费视频| 免费精品国产自产拍观看| 在线观看亚洲网站| 四虎在线播放免费永久视频 | 国内精品99亚洲免费高清| 四虎影视久久久免费观看| 亚洲高清无码综合性爱视频| 免费国产草莓视频在线观看黄| 免费国产精品视频| 免费无码午夜福利片 | 亚洲黄色免费网站| 84pao强力永久免费高清| 久久亚洲精品人成综合网| 69av免费观看| 亚洲国产精品成人精品软件| 黄页网站在线看免费| 亚洲AV男人的天堂在线观看| 四虎www成人影院免费观看| 亚洲aⅴ无码专区在线观看春色| 国产免费无遮挡精品视频| 日本一区二区三区在线视频观看免费 |