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

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

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

    我的開源學習之路

    web

     

    重構與模式 解讀--------用Creation Method替換構造函數

    ???? 類中有多個構造函數,因此很難決定在開發期間調用那一個的時候,請采用Creation Method(個人翻譯為靜態構建模式)方式
    ??
    優點:
    ???? 1:比構造函數能夠更好的表達創建的實例的總類
    ???? 2:避免了構造函數的局限,比如兩個構造函數的參數數目和類型不能相同
    ???? 3:更容易發現無用的創建代碼
    ????
    缺點:
    ???? 創建方式是非標準的,有些類需要使用new實例化,有些需要使用靜態構建模式.

    ?????????????????????? ?? ??? ??? ??? ? -------------------------以上是書中原話

    ??? 個人強烈推薦使用靜態構建模式,尤其是優點的第2條,很優雅的解決了我下面例子中的問題
    不可運行代碼:
    public class People {
    ??? private int age;
    ??? private int height;
    ??? public People(int age){
    ??? ??? this.age=age;
    ??? }
    ??? public People(int
    height){
    ??? ??? this.
    height=height;
    ??? }
    }
    使用構建模式后:
    public class People {
    ??? private int age;
    ??? private int height;??
    ??? public static? People createPeopleByAge(int age){
    ??? ??? this.age=age;
    ??? }
    ???
    public static? People createPeopleByHeight(int height){
    ??? ??? this.
    height=height;
    ??? }

    }

    對比一下兩個對象,第二個對象的代碼變得優雅而又實用了.而且邏輯清晰

    其實還有幾個優點:
    ??????? 1:當使用new初始化一個類的時候,類中的每個構造函數都會被遍歷一遍,也就是構造函數越多,這個類實例化需要的時間越長.
    ??????? 2:我們現在很多人使用了編譯器,有個代碼提醒的功能.如果是靜態方法,可以得到提醒,而不同的構造函數,我們必須去查api了.
    ???????

    ????????????????????????????????????????????????????????????????

    posted on 2007-02-07 09:13 abba 閱讀(893) 評論(0)  編輯  收藏

    導航

    統計

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    SteelHand

    友情鏈接

    高手

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲va久久久噜噜噜久久| 国产美女无遮挡免费视频网站| 免费播放特黄特色毛片| 亚洲AV无码一区二区乱子仑 | 亚洲国产成人精品青青草原| 免费网站看av片| 亚洲AV人人澡人人爽人人夜夜| 国内精品久久久久影院免费| 亚洲V无码一区二区三区四区观看| 99久久国产精品免费一区二区 | 亚洲精品二三区伊人久久| 99久久精品日本一区二区免费| 91亚洲视频在线观看| 啦啦啦中文在线观看电视剧免费版| 亚洲一本到无码av中文字幕| 免费的一级片网站| 成年免费a级毛片| 亚洲国产日韩在线视频| 日本免费一区二区三区| 亚洲国产成人久久综合一区| 性盈盈影院免费视频观看在线一区| 久久精品国产亚洲av品善| 亚洲精品国产高清嫩草影院| 9久热精品免费观看视频| 久久亚洲精品成人综合| 久久久久久国产a免费观看黄色大片 | 毛片a级毛片免费播放下载 | 99re6在线精品免费观看| 亚洲国产成人久久综合碰碰动漫3d| 日本免费一区二区在线观看| 亚洲欧美乱色情图片| 亚洲美女在线国产| 91精品免费不卡在线观看| 亚洲一线产区二线产区区| 亚洲人成色77777在线观看大| 97在线免费视频| 亚洲影院天堂中文av色| AV在线播放日韩亚洲欧| 免费观看激色视频网站bd | 亚洲精品美女久久久久9999| 四虎成人免费观看在线网址 |