接口模式

在系統的設計時刻常常遇到這樣一個問題 ： 類Client的實例instanceClient希望使用另一個對象instanceX提供的服務service ， 但在設計時刻並不能確定對象instanceX究竟屬於哪個類 。 常見的解決辦法是 ： 將對象instanceX提供的服務service抽象爲一個接口ServiceProvider ， 然後讓對象instanceClient通過持有接口ServiceProvider的實例來使用服務service 。 這種通過接口間接獲得服務的解決方案就是接口模式 。 接口模式還可以有一些變化的形式 ： 不止用一個接口抽象一個對象提供的服務 ， 還可以用一組接口抽象一群對象的交互 。