1煤伟、定義
客戶端不應(yīng)該依賴它不需要的接口;一個類對另一個類的依賴應(yīng)該建立在最小的接口上木缝。
ISP_Diagram.png
2便锨、實現(xiàn)
(1)定義臉蛋、身材美女接口
interface IGoodBodyGirl {
void goodLooking();
void niceFigure();
}
(2)定義氣質(zhì)美女接口
interface IGreatTemperamentGirl {
void greatTemperament();
}
(3)定義星探抽象類
abstract class AbstractSearcher {
abstract void show();
}
(4)實現(xiàn)美女類
public class PettyGirl implements IGoodBodyGirl, IGreatTemperamentGirl {
private String name;
public PettyGirl(String name) {
this.name = name;
}
@Override
public void goodLooking() {
Log.d("JimmyZhang", name + "---臉蛋很漂亮");
}
@Override
public void greatTemperament() {
Log.d("JimmyZhang", name + "---氣質(zhì)非常好");
}
@Override
public void niceFigure() {
Log.d("JimmyZhang", name + "---身材非常棒");
}
}
(5)星探實現(xiàn)類
class Searcher extends AbstractSearcher {
public PettyGirl pettyGirl;
public Searcher(PettyGirl pettyGirl) {
this.pettyGirl = pettyGirl;
}
@Override
void show() {
pettyGirl.goodLooking();
pettyGirl.niceFigure();
pettyGirl.greatTemperament();
}
}
(7)測試實現(xiàn)
class Client {
public static void main(String[] args) throws IOException {
PettyGirl pettyGirl = new PettyGirl("景甜");
AbstractSearcher searcher = new Searcher(pettyGirl);
searcher.show();
}
}