2015-05-14 53 views
0

我需要为我的班级做一个java程序。 我做到了,效果很好。接口类与类

在我的代码中,我有一些私有方法。我是否需要构建一个接口类来隐藏这些私有方法,或者它们可以与公共方法在同一个类中?

目前(公共和私人)所有方法都是在同一个班,但我的同事坚持认为我需要创建一个接口来隐藏私有方法

+0

就这样我们很清楚,接口不允许私人成员。 –

回答

5

不,你并不需要创建一个接口。如果你只是通过接口使用这个类,那么一个接口会将它们隐藏得更多(从人们的眼中,而不是从代码),但即使没有接口,私有方法也不会被其他类使用。

0

如果您想完全实施“代码到接口”指南,您可以声明interface为您的public方法实施。

你绝对不能做的是在接口中声明方法,然后在你的类中实现它们作为private - 这会降低可见性,甚至不能编译。

最终private方法仅限于您的类的范围。

0

这可能有助于重复“什么是接口的目的?”

是:“什么的,至于其他人应该关注的,这个事情正式申报‘给’,‘需要’和‘做’。”

所以...如果一个客户端类想要处理“实现这个接口的东西”,以及其他五个类(,其中包括彼此的兄弟姐妹或祖先......),各自以自己的方式这样做,然后:五个中的任何一个都可以兼容。为什么?因为它们提供接口所需的所有属性和/或方法。 (这就是“实施”的意思。)

这些都没有暴露客户的任何“私人事物”。实际上,一个界面绝对没有说这个类如何实际上做它所要做的事,也不知道其他它做什么。 “满足界面的要求,你就可以得到这份工作。”