包中的Java接口和类组织约定

我见过下面的组织,但是想知道组织类和接口是否有任何既定的约定或有用的建议?

> [域名].[名称]

> foo

> impl(包含具有抽象和具体实现的类)
> intf(包含接口)

最佳答案 没有严格的规则,你的里程可能会有所不同……

但是,我建议将相关的公共接口和实现代码保存在同一个包中.通过这种方式,接口,枚举,常量,工厂类或其他需要公开的其他内容是公共的,而实现类可以是大部分或完全私有的或只有包可见.将实现类放在一个单独的包中将迫使一些细节公开,否则不会暴露.

点赞