青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

xiaoguozi's Blog
Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習慣原本生活的人不容易改變,就算現(xiàn)狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預料,人們需要更細心的觀察別人,要隨時注意才能保護別人,因為他們未必知道自己要什么·····
  Java 5的泛型語法已經(jīng)有太多書講了,這里不再打字貼書。GP一定有用,不然Java和C#不會約好了似的同時開始支持GP。但大家也清楚,GP和Ruby式的 動態(tài)OO語言屬于不同的意識形態(tài),如果是一人一票,我想大部分的平民程序員更熱衷動態(tài)OO語言的平白自然。但如果不準備跳槽到支持JSR223的動態(tài)語 言,那還是看看GP吧。

   胡亂總結(jié)泛型的四點作用:
   第一是泛化,可以拿個T代表任意類型。 但GP是被C++嚴苛的靜態(tài)性逼出來的,落到Java、C#這樣的花語平原里----所有對象除幾個原始類型外都派生于Object,再加上Java的反射功能,Java的Collection庫沒有范型一樣過得好好的。

   第二是泛型 + 反射,原本因為Java的泛型拿不到T.class而覺得泛型沒用,最近才剛剛學到通過反射的API來獲取T的Class,后述。

   第三是收斂,就是增加了類型安全,減少了強制類型轉(zhuǎn)換的代碼。這點倒是Java Collection歷來的弱項。

   第四是可以在編譯期搞很多東西,比如MetaProgramming。但除非能完全封閉于框架內(nèi)部,框架的使用者和擴展者都不用學習這些東西的用法,否則 那就是自絕于人民的票房毒藥。C++的MetaProgramming好厲害吧,但對比一下Python拿Meta Programming生造一個Class出來的簡便語法,就明白什么才是真正的叫好又叫座。

   所以,作為一個架構(gòu)設計師,應該使用上述的第2,3項用法,在框架類里配合使用反射和泛型,使得框架的能力更強; 同時采用收斂特性,本著對人民負責的精神,用泛型使框架更加類型安全,更少強制類型轉(zhuǎn)換。
   
   擦拭法避免了Java的流血分裂 :
    大家經(jīng)常罵Java GP的擦拭法實現(xiàn),但我覺得多虧于它的中庸特性---如果你用就是范型,不用就是普通Object,避免了Java陣營又要經(jīng)歷一場to be or not to be的分裂。 
    最大的例子莫過Java 5的Collection 框架, 比如有些同學堅持認為自己不會白癡到類型出錯,而且難以忍受每個定義的地方都要帶一個泛型定義List〈Book〉,不用強制類型轉(zhuǎn)換所省下的代碼還不夠N處定義花的(對了,java里面還沒有tyepdef.....),因此對范型十分不感冒,這時就要齊齊感謝這個搽拭法讓你依然可以對一個泛型框架保持非泛型的用法了...

   通過反射獲得 T.class:
   
    不知為何書上不怎么講這個,是差沙告訴我才知道的,最經(jīng)典的應用見Hibernate wiki的Generic Data Access Objects, 代碼如下: 
abstract public class BaseHibernateEntityDao<T> extends HibernateDaoSupport {
 
private Class<T> entityClass;
 
public BaseHibernateEntityDao() {
        entityClass 
=(Class<T>) ((ParameterizedType) getClass()
                                .getGenericSuperclass()).getActualTypeArguments()[0];
    }
 
public T get(Serializable id) {
        T o 
= (T) getHibernateTemplate().get(entityClass, id);
}
}

  精華就是這句了:
Class<T> entityClass = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0]; 

  泛型之后,所有BaseHibernateEntityDao的子類只要定義了泛型,就無需再重載getEnttityClass(),get()函數(shù)和find()函數(shù),銷益挺明顯的,所以SpringSide的Dao基類毫不猶豫就泛型了。

  不過擦拭法的大棒仍在,所以子類的泛型語法可不能亂寫,最正確的用法只有:
    public class BookDao extends BaseHibernateEntityDao<Book>

轉(zhuǎn)自:
http://www.blogjava.net/calvin/archive/2009/12/10/43830.html
posted on 2012-04-14 21:47 小果子 閱讀(551) 評論(0)  編輯 收藏 引用 所屬分類: Android & Ios
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产精品ⅴa在线观看| 欧美亚洲一区三区| 亚洲美女视频网| 午夜天堂精品久久久久| 国产在线高清精品| 欧美成va人片在线观看| 亚洲一区二区伦理| 免费观看成人| 亚洲中字黄色| 91久久精品国产91性色| 久久免费精品日本久久中文字幕| 亚洲伦理精品| 亚洲福利视频二区| 亚洲人成网站999久久久综合| 久久精品国产亚洲aⅴ| 亚洲视频 欧洲视频| 有码中文亚洲精品| 在线观看视频免费一区二区三区| 国产精品伦一区| 国产精品白丝jk黑袜喷水| 国产精品sss| 免费的成人av| 欧美日韩精品中文字幕| 欧美精品在线一区二区| 欧美国产日本| 欧美精品一区二区三区四区| 欧美激情中文字幕一区二区| 欧美成人午夜剧场免费观看| 欧美日韩高清不卡| 国产欧美日韩中文字幕在线| 国产综合在线看| 亚洲美女淫视频| 欧美一级淫片播放口| 久久综合狠狠| 亚洲黄页视频免费观看| 亚洲女人av| 欧美福利一区二区三区| 国产精品免费一区二区三区在线观看| 亚洲激情中文1区| 欧美在线观看视频在线| 欧美国产一区二区三区激情无套| 欧美在线啊v一区| 久久视频在线视频| 国产精品福利在线观看| 欧美aⅴ99久久黑人专区| 欧美淫片网站| 欧美一级片在线播放| 欧美日韩福利| 一区二区福利| 亚洲国产二区| 欧美—级a级欧美特级ar全黄| 国产精品区二区三区日本| 宅男噜噜噜66国产日韩在线观看| 久久综合婷婷| 久久精品亚洲一区二区| 久久久噜噜噜久久久| 国产一区白浆| 免费国产自线拍一欧美视频| 久久视频一区| 夜夜嗨av一区二区三区网页| 亚洲黄色三级| 国产精品久久久久一区二区三区| 亚洲美女av网站| 亚洲精品视频免费在线观看| 欧美激情性爽国产精品17p| 亚洲伦理中文字幕| 亚洲午夜在线观看视频在线| 国产精品永久免费观看| 美女视频一区免费观看| 久久国产精品久久国产精品| 亚洲二区视频| 亚洲午夜免费视频| 在线日韩电影| 亚洲综合三区| 久久天天躁狠狠躁夜夜爽蜜月| 国内伊人久久久久久网站视频 | 在线视频国产日韩| 中文欧美字幕免费| 亚洲级视频在线观看免费1级| 99热这里只有精品8| 影音先锋另类| 久久精品免视看| 亚洲欧美日韩另类精品一区二区三区| 国产综合色精品一区二区三区| 欧美亚一区二区| 米奇777在线欧美播放| 欧美成人精品福利| 美女日韩欧美| 美女诱惑一区| 亚洲国产成人在线视频| 欧美韩国日本一区| 欧美国产日产韩国视频| 欧美日韩一区在线| 一区二区三区www| 亚洲一区二区在线播放| 欧美日韩精品一区| 亚洲视频网站在线观看| 国产精品亚洲欧美| 欧美亚洲免费高清在线观看| 久久精品亚洲一区二区| 韩国女主播一区二区三区| 欧美主播一区二区三区美女 久久精品人| 一区二区三区你懂的| 欧美激情va永久在线播放| 亚洲美女视频在线免费观看| 亚洲一区二区三区国产| 国产精品午夜在线| 美女精品一区| 亚洲一区二区三区在线看| 亚洲国产成人精品女人久久久| 欧美天堂亚洲电影院在线播放| 亚欧成人在线| 久久久www成人免费无遮挡大片 | 狠狠综合久久| 国产亚洲欧美一区| 国产一区二区三区在线观看免费| 欧美三级网址| 国产精品久久久久久超碰| 欧美区一区二| 国产精品美女久久久久aⅴ国产馆| 欧美日韩情趣电影| 宅男精品导航| 蜜桃av一区| 亚洲精品一区在线| 亚洲一区在线观看免费观看电影高清| 亚洲精选一区| 亚洲免费在线播放| 久久久伊人欧美| 欧美+亚洲+精品+三区| 欧美日韩亚洲一区二区三区在线| 欧美色图一区二区三区| 国产精品久久久久久福利一牛影视| 国产亚洲视频在线| 亚洲国内在线| 亚洲国产日韩欧美| 国产精品视区| 一区二区三区精品视频在线观看 | 一区二区三欧美| 亚洲影院免费观看| 免费观看一级特黄欧美大片| 欧美三级视频在线播放| 亚洲承认在线| 久久久久.com| 亚洲视频在线看| 欧美三级资源在线| 欧美精品 国产精品| 国产精品女人毛片| 欧美黄色一级视频| 精品999在线播放| 午夜精品久久久99热福利| 一区二区久久久久| 欧美激情91| 亚洲激情成人在线| 亚洲黄网站黄| 久久婷婷av| 亚洲大片精品永久免费| 狠狠干综合网| 久久精品在这里| 日韩视频在线观看| 亚洲日本成人网| 欧美日韩国语| 欧美综合国产| 久久人人爽人人爽爽久久| 亚洲国产欧美一区| 一区二区三欧美| 国产一区二区三区日韩| 欧美成年人视频网站欧美| 免费在线观看精品| 一区二区精品国产| 欧美永久精品| 亚洲裸体俱乐部裸体舞表演av| 日韩视频免费观看高清在线视频| 国产精品高潮呻吟久久av无限| 欧美一区在线看| 美女视频一区免费观看| 一本久久综合亚洲鲁鲁| 久久国产精品99精品国产| 亚洲精品中文字幕在线观看| 亚洲制服av| 亚洲香蕉在线观看| 久久综合久色欧美综合狠狠| 亚洲一级在线| 欧美日韩精品一区| 亚洲成人在线网| 亚洲电影在线播放| 久久福利电影| 久久午夜精品| 极品裸体白嫩激情啪啪国产精品| 亚洲肉体裸体xxxx137| 亚洲福利专区| 久久精品水蜜桃av综合天堂| 国产精品热久久久久夜色精品三区| 久久国产精品亚洲77777| 国产精品三级视频| 亚洲永久在线| 玖玖在线精品| 免费亚洲一区二区| 毛片基地黄久久久久久天堂| 久久国产视频网站| 欧美一区二区精品久久911|