2012-05-25 73 views
1

可能是一个普遍的问题,但它被认为是不好的做法,有一个接口(服务),以及它的实现(ServiceImpl),但与ServiceImpl私人实用方法那不包含在界面中?接口最佳实践

回答

9

不错的练习 - 我期望几乎任何非平凡的具体实现类包含私有方法。另一种选择通常是在课堂上有太多太大的方法体。

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

5

根本没有,完全是你应该做的。

5

接口的原因是你定义了一个契约,你的实现可以有任意数量的私有方法来使契约工作。

这不会被认为是不好的做法,添加到您的实现类也可以提供公共方法。

如果不是使用接口提供的API工作,那么使用实现类的公共方法在一般说明中肯定是不好的做法,尽管有时会出现无法避免的情况。

5

不,这很好。你的服务界面只是列出了它想要展示给世界的东西。它如何实施取决于你。如果使用这些私有实用程序方法来实现接口,那就没问题。