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

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

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

    posts - 176, comments - 240, trackbacks - 0, articles - 7

    [導入]關于對象的兩個注解

    Posted on 2006-03-25 11:36 canonical 閱讀(955) 評論(0)  編輯  收藏 所屬分類: 設計理論

    1. 對象的一個特性是局域化。每一個對象函數(shù)(非靜態(tài)函數(shù))都是在對象的上下文中調用的,因而隱含假設了一定的環(huán)境信息,這些信息以封裝的形式被使用。
    ?? 一個具體的體現(xiàn)是函數(shù)的命名,如果沒有對象,我們必須給函數(shù)進行全局命名,例如 find_friends, find_users, find_departments, 而在對象的環(huán)境下,我們可以抽象出一個采用局域化命名的接口 IQueriable.find(),實現(xiàn)系統(tǒng)的深度分解。
    ?? 在對象成員函數(shù)的內部,我們通過統(tǒng)一預定的名字(this指針)來訪問對象環(huán)境中的變量。而在 jsplet web框架中的action和前臺jsp中,我們通過thisObj變量來訪問后臺邏輯對象的上下文,而不需要知道對象的具體名稱 (objectName)。

    2. 對象的另一個特性是靜態(tài)化。我們從面向過程走向面向對象時,我們思維中的圖像出現(xiàn)了一個重大的變化:在面向過程的程序中,我們想象中存在的是一個個動態(tài)的處理過程,它們在時間軸上按照一定的順序依次執(zhí)行。而在面向對象的圖景中,我們考慮的主要是一個靜態(tài)化的世界,系統(tǒng)分解為對象,而對象是同時存在于我們的思維中的。這里一個重要的技術手段就是成員函數(shù)。例如我們編寫一個成員函數(shù)getChildren(), 這個函數(shù)的語義是返回一個數(shù)據(jù)變量,概念上它是靜態(tài)的,但其內部實現(xiàn)其實可能是很復雜的,非常的動態(tài)化:可能需要查詢數(shù)據(jù)庫,可能需要校驗權限等等。
    理想的情況下,我們可以利用成員函數(shù)封裝可以實現(xiàn)對象圖的遍歷。例如? x.getParent().getChilldren(), 在微軟的COM模型或者Sun的JavaBean標準下,我們可以寫成
    x.parent.children。
    特別注意這里的屬性語法原則上是與時間無關的,即在同一個時刻我們認為這些屬性同時存在著,是一個靜態(tài)的關系。而以下的調用出現(xiàn)了明確的步驟,因而明確引入了時間因素
    ITree parent = node.getParent();
    if(parent == null)
    ?? return null;
    List children = node.getChildren();
    return children;

    在witrix平臺的tpl模板引擎中使用的EL(Expressin Language)表達式語法會自動處理函數(shù)返回值為null的情況,因而維護了對象圖的語義,不需要中斷調用過程來進行異常處理,是簡化界面編程的一個重要方面。

    這里順便提一句:人的思維是傾向于靜態(tài)化的,但現(xiàn)實世界卻是在不斷的變動中的。正所謂不變的只有變化。Von Neumann體系結構強迫我們在最細節(jié)處引入變化過程,很多時候是過分的負擔。我們需要的是識別出各種可以靜態(tài)描述的部分,集中精力于那些真正需要隨需應變的應用。

    主站蜘蛛池模板: 你懂的免费在线观看| 永久免费毛片在线播放| 亚洲国产精品乱码在线观看97| 国产卡一卡二卡三免费入口 | 亚洲综合一区无码精品| 亚洲精品无码久久不卡| 91av免费观看| 国产午夜亚洲精品不卡电影| 国产亚洲一区二区三区在线观看| 精品国产无限资源免费观看| 免费大片av手机看片| 亚洲精品国产手机| 亚洲成人影院在线观看| 毛片免费全部播放无码| 一级做a爰片性色毛片免费网站 | 亚洲AV成人片色在线观看高潮 | 亚洲熟女一区二区三区| 99re热免费精品视频观看| www在线观看播放免费视频日本| 亚洲国色天香视频| 久久国产成人亚洲精品影院 | 成人免费AA片在线观看| 中文字幕免费在线看电影大全 | 水蜜桃视频在线观看免费| 亚洲视频国产视频| 国产91精品一区二区麻豆亚洲| 午夜国产精品免费观看| 波多野结衣免费一区视频| 国产成人精品日本亚洲语音| 久久综合亚洲色HEZYO社区 | 伊人久久综在合线亚洲2019| 亚洲AⅤ视频一区二区三区| 男人的好免费观看在线视频| 成人性生交大片免费看好| 黄网站色视频免费观看45分钟| 亚洲国产系列一区二区三区| 911精品国产亚洲日本美国韩国| 久久国产成人亚洲精品影院| 国产精品久久久久影院免费| 日本高清在线免费| 99久久精品免费精品国产|