介面隔離原則基本介紹
不應該依賴不需要的介面,即乙個類對另乙個類的依賴應該建立在最小的介面上。
場景:1.類b實現介面inte***ce1 ,類a通過介面inte***ce1依賴(使 用)類b,但是只會用到1,2,3方法
2.類d實現介面inte***ce1 ,類c通過介面inte***ce1依賴(使 用)類d,但是只會用到1,4,5方法
public
class
isp}
inte***ce
inte***ce1
//類b實現介面inte***ce1
class
bimplements
inte***ce1
public
void
operation2()
public
void
operation3()
public
void
operation4()
public
void
operation5()
}//類d實現介面inte***ce1
class
dimplements
inte***ce1
public
void
operation2()
public
void
operation3()
public
void
operation4()
public
void
operation5()
}//類a通過介面inte***ce1依賴(使用) 類b,但是只會用到1,2,3方法
class
apublic
void
depend2
(inte***ce1 i)
public
void
depend3
(inte***ce1 i)
}//類c通過介面inte***ce1依賴(使用) 類d,但是只會用到1,4,5方法
class
cpublic
void
depend4
(inte***ce1 i)
public
void
depend5
(inte***ce1 i)
}
介面隔離原則
public
class
isp}
inte***ce
inte***ce1
inte***ce
inte***ce2
inte***ce
inte***ce3
//類b 實現介面inte***ce1 ,inte***ce2的所有方法
class
bimplements
inte***ce1
, inte***ce2
public
void
operation2()
public
void
operation3()
}//類a 通過介面 inte***ce1,inte***ce2 依賴 (使用)類b 只會用到方法1,2,3
class
apublic
void
depend2
(inte***ce2 i)
public
void
depend3
(inte***ce2 i)
}//類d實現介面inte***ce1,inte***ce3 的所有方法
class
dimplements
inte***ce1
, inte***ce3
public
void
operation4()
public
void
operation5()
}//類c 通過介面 inte***ce1,inte***ce3 依賴 (使用)類d 只會用到方法1,4,5
class
cpublic
void
depend4
(inte***ce3 i)
public
void
depend5
(inte***ce3 i)
}
設計模式七大原則之介面隔離原則
乙個類對另乙個類的依賴應該建立在最小的介面上,如果建立在不是最小的介面上,則要實現不需要的方法違背介面隔離原則。場景 inte ce1是乙個介面,有五個方法,c和d分別實現了inte ce1介面,a通過inte ce1對c產生依賴,但只需要用到function1,function2,function...
設計模式七大原則之介面隔離原則
基本介紹 客戶端不應該依賴它不需要的介面,即乙個類對另乙個類的依賴應該建立在最小的介面上 先看一張圖 類a通過介面inte ce1依賴類b,類c通過介面inte ce1依賴類d,如果介面inte ce1對於類a和類c來說不是最小介面,那麼類b和類d必須去實現他們不需要的方法。按隔離原則應當這樣處理 ...
02 設計模式七大原則 介面隔離原則
客戶端不應該依賴他不需要的介面,即乙個類對另乙個類的依賴應該建立在最小的介面上 package study.wyy.design.principle.segregation author by wyaoyao description date 2020 10 13 8 30 下午 public cl...