1.封裝
屬性私有:將對象的屬性和行為封裝起來
對外提供公有的getter/setter
2.類之間的關(guān)系
縱向關(guān)系:比較清晰
1.繼承、 實現(xiàn)
-繼承關(guān)系:父子關(guān)系--extends
-實現(xiàn):類對接口的實現(xiàn)---implements
橫向關(guān)系:取決于語義
依賴
-雙方的地位往往是獨立平等的(地位)
-是偶爾的贩疙、臨時性的辛掠、不頻繁性的(依賴程度)
-代碼層面的表現(xiàn)形式而言:往往是局部的變量
-類B以參數(shù)的形式傳入類A的方法
類B以局部變量的形式存在于類A的方法中
類A調(diào)用類B的靜態(tài)方法
例子:人與紙杯
關(guān)聯(lián)
-雙方的地位往往是獨立的情屹、平等的(地位)
-是長期的敌厘、穩(wěn)定的糠亩、頻繁的(依賴關(guān)系)
-代碼層面的表現(xiàn)形式而言汹桦,關(guān)聯(lián)往往以全局屬性的形式存在
例子:人和手機
聚合
-雙方的地位不是平等的鲁驶,是整體和部分之間的關(guān)系(地位)
-是長期的、穩(wěn)定的舞骆、頻繁的钥弯,這種關(guān)系比關(guān)聯(lián)更強,以至于在形式上出現(xiàn)了整體和-部分之間的關(guān)系督禽。
-整體和部分都有自己的生命周期脆霎。
-代碼層面的表現(xiàn)形式而言可參考關(guān)系
例子:合唱團和歌手
組合
-雙方的地位不是平等的,是整體和部分之間的關(guān)系(地位)
-比聚合更強狈惫,部分的生命周期取決于整體睛蛛,部分隨著整體的消失而消失(依賴程度)
-代碼層面的表現(xiàn)形式而言可參考關(guān)聯(lián)
-區(qū)分是聚合還是組合的核心點是在生命周期
例子:樹和樹根