我无法弄清楚API及其实现(在java中)分离的含义。在下面的程序中,我是否将它们分开了?如果没有,请告诉我该怎么做。 另外,我只是想知道如何在简单的程序中遵循这种实践,而不是在项目中遵循它。
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");
}
}
最佳答案
API是使用代码和实现之间的契约,通常设计为接口(interface)。
public interface Contract {
public void doIt();
}
public class ContractImpl implements Contract {
public void doIt() {
// do some hidden code
}
}
public class Client {
public static void main(String[] args) {
Contract api = new ContractImpl();
api.doIt();
}
}
这样,从客户端的角度来看,实现是隐藏的(在界面后面)。
关于java - 将 API 与其实现分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19002937/