我無法弄清楚API和它的實現分離的意義(在java中)。在下面的程序中,我是否將它們分開了?如果沒有,請告訴我該怎麼做。 另外,我只是想知道如何在簡單的程序中遵循這種做法,而不是在項目中遵循它。將API與其實現分離
public class HideImplementation{
private String value;
private String someMethod(){
//some code
}
public void setValue(String value){
//some code
}
public String getValue(){
//some code
}
}
class Client{
public static void main(String[] args){
HideImplementation obj = new HideImplementation();
obj.setValue("Java");
}
}
這個問題看起來有點過於寬泛......但是,對於分離,我認爲您需要一個接口來定義類HideImplementation的方法,該類應該實現,然後在處理時使用接口實例(例如像變量聲明) – ppeterka
是的,它告訴我編程是如何工作的,如果我是專業人士。無論如何。查看遵循此設計模式的現有庫項目。例如,所有的JSR Stuff都像JPA一樣。你有JPA API,只有接口和幾個實現像Hibernate,EclipseLink等你明白嗎?這樣,其他開發人員就可以綁定到api而不必關心底層實現。一個簡短的例子很難給對不起。 –
如你所做的那樣使用可見性是一種分離方式。在'interface's中定義你的API是另一種方法:在適當的公共接口中聲明你的API方法,然後將其發佈爲「API」,而你的接口的實現不受用戶API。 – JimmyB