我被告知并建议使用接口来提高性能,即使在不特别需要常规“接口”角色的情况下也是如此。在这种情况下,对象是具有许多方法和字段的大型模型(在MVC意义上)。
对我推荐的“好用法”是创建一个接口及其唯一实现。肯定不会有其他类实现此接口。我被告知这样做更好,因为它“暴露得更少”(或类似的东西)给将使用此类方法的其他类,因为这些对象是从其接口引用对象的(实现中的所有公共方法都在接口中复制)。
这对我来说似乎相当奇怪,因为在我看来这似乎是C++用法(带有头文件)。在Java中我看到了这一点,但是真的有必要为这样独特的实现制作接口吗?
制作这样的唯一实现接口是否真的有意义?我真的很想在这个话题上进行一些澄清,以便我可以证明不遵循这种行为以及重复所有声明所产生的麻烦。
编辑:感谢大家的回答,这对我非常有帮助和启发(不仅是“接受”的回答)。
显然,性能上没有优势,现在我对它可能带来的利益范围有了更广泛的认识(取决于情况),除了接口的通常OO角色。