我已经在许多语言的许多地方看到了这个事实上的标准,但我从来没有理解它 - 为什么把你的私人领域和方法置于类声明的顶端?隐喻地看起来私人事物应该位于底部(隐藏)并且所有公共应该位于顶部,因此当您从上到下阅读课程时,首先看到公共界面然后是内部工作.
这背后的原因是什么?
编辑:只是为了澄清,我并不是指在课堂上声明所有成员的做法,而是在公开之前将私人成员/方法放在课堂声明的顶部.
Chr*_*isF 22
它源于你必须在使用之前声明所有东西 - 包括函数和变量 - 的日子.
内部(私有)变量和函数位于文件的顶部,外部(公共)函数位于文件的底部.这意味着公共职能可以引用内部职能.如果你有递归,你必须通过声明它的配置文件来转发引用该函数.
当语言允许代码跨越多个文件时,您必须将公共函数和变量声明放入头文件中,以便它们可以包含在项目中的其他文件中 - 或者实际上是其他项目中.
就个人而言,当我试图阅读其他人的代码并理解它时,我喜欢拥有私有字段提供的上下文.它让我快速了解他们正在做的事情的类型以及我可以期待看到的事物.如果操作正确,它可以提供一个很好的预览,几乎就像其他代码的目录一样.
我同意它可能来自 C,但它也有实用的功能。
在所有你想学习的东西中,按照需要这些知识的顺序,比如先学习如何加法,然后再学习如何乘法。
在代码的情况下,您的公共函数通常会引用内部私有函数,而您的私有函数不太可能引用公共函数(尽管肯定存在重叠。)因此,了解您拥有哪些私有变量以及它们的用途当试图了解公共方法对这些变量做什么时会很有用。
通过这种方式,在阅读调用它们的公共方法之前了解私有方法的作用也很有用。
总的来说,我相信它是一种来自 C 和早期语言的风格,但因为它在功能上更有用,所以我认为切换风格没有任何好处。
而且,一如既往,除非有令人难以置信的令人信服的理由,否则打破一致性从来都不是一个好主意。