我们在做java 开发中,要做到单一职责原则,也就是我不必要的依赖不需要引入。
我们举个例子
有一个类Modem, 有以下四个方法,但是如何我们有没有办法做到,一部分人调用能看到一部分方法。
public class Modem{ public void dial(String pno) {} public void hangup() {} public void send(char c) {} public void recv() {} }
接口隔离设计:
1.增加接口Connection
public interface Connection { void send(char c); void recv(); }
2.增加接口DataChannel
public interface DataChannel { void dial(String pno); void hangup(); }
public class Modem implements DataChannel, Connection { @Override public void dial(String pno) { } @Override public void hangup() { } @Override public void send(char c) { } @Override public void recv() { } }
这样我们在操作的时候如下:
Connection connection = new Modem(); connection.recv(); connection.send();