設計原則1 迪公尺特法則

2021-10-21 20:13:53 字數 977 閱讀 5371

迪公尺特法則(law of demeter)又叫作最少知識原則,最少知道原則(the least knowledge principle),乙個物件應當對其他物件有盡可能少的了解,只和朋友通訊,不和陌生人說話。英文簡寫為: lod。

是「朋友」的情況

1)當前物件本身(this)

2)以參量形式傳入到當前物件方法中的物件

3)當前物件的例項變數直接引用的物件

4)當前物件的例項變數如果是乙個聚集(比如說list< node >),那麼聚集中的元素也都是朋友

5)當前物件所建立的物件

不是「朋友」的情況

classa}

classb}

public

class

notfriendstest

public

void

changefriends

(b b)

}

電腦關機

違反迪公尺特原則的寫法

public

class

person

}class

computer

public

void

closescreen()

public

void

outage()

}

正確寫法

public

class

person

}class

computer

private

void

closeprocess()

private

void

closescreen()

private

void

outage()

}

設計原則之迪公尺特法則

設計原則之迪公尺特法則 設計原則之迪公尺特法則 如果兩個類彼此不必直接通訊,那麼著兩個類就不應當發生直接的相互作用.如果其中乙個類需要呼叫另乙個類的某乙個方法的話,可以通過第三方 這個呼叫.舉個列子來說,你要it部門的人修理機器,打 的時候問 請問是it部門嗎?這樣對方無論是it部門經理還是it部門...

設計原則之迪公尺特法則

定義 乙個物件應該對其他物件有最少的了解。什麼是朋友?每個物件必然都會與其他物件有耦合關係,兩個物件之間的耦合就是朋友關係。這種關係的型別有組合,聚合,依賴。但是迪公尺特法則要求,只和直接朋友交流。例項 老師讓體育委員清點班上的女生的人數。public class teacher grouplead...

設計模式原則5 迪公尺特法則

迪公尺特法則 law of demeter,lod 也稱為最少知識原則 least knowledge principle,lkp 乙個物件應該對其他物件有最少的了解。通俗來講,乙個類應該對自己需要耦合或呼叫的類知道的最少。我就知道你提供的這麼多public方法,我就呼叫這麼多,其他的我一概不關心。...