Java 接口最佳实践

Java 接口最佳实践,java,interface,implementation,Java,Interface,Implementation,可能是一个一般性的问题,但有一个接口(Service)和它的一个实现(ServiceImpl)被认为是一种不好的做法,但是,如果ServiceImpl包含接口中不包含的私有实用程序方法,那么这一做法一点也不坏——我希望几乎所有非平凡的具体实现类都包含私有方法。另一种选择通常是在类中有太大的方法体 别忘了,班外没有人会关心你是否有很多私有方法。他们应该只关心您的公共API(或相关的包/受保护的API)。不,完全不是,您应该做什么。接口的原因是您定义了一个契约,您的实现可以有任意数量的私有方法使该契

可能是一个一般性的问题,但有一个接口(Service)和它的一个实现(ServiceImpl)被认为是一种不好的做法,但是,如果ServiceImpl包含接口中不包含的私有实用程序方法,那么这一做法一点也不坏——我希望几乎所有非平凡的具体实现类都包含私有方法。另一种选择通常是在类中有太大的方法体


别忘了,班外没有人会关心你是否有很多私有方法。他们应该只关心您的公共API(或相关的包/受保护的API)。

不,完全不是,您应该做什么。

接口的原因是您定义了一个契约,您的实现可以有任意数量的私有方法使该契约生效

这绝不是不好的做法,添加到其中,您的实现类还可以提供公共方法


如果您不使用接口提供的API,而是使用实现类的公共方法,那么从总体上说,这肯定是一种不好的做法,尽管有时会出现无法避免的情况。

不,没关系。您的服务接口只列出了它想要向世界公开的内容。如何实施取决于您。如果使用这些私有实用程序方法来实现接口,就可以了