公共/私人变量和功能的重点是什么?

时间:2011-03-15 19:34:40

标签: php oop

这不是一个文字编码问题,我只是想知道,使用公共和私有函数和变量有什​​么意义?我会在哪里使用它们?

我一直认为它们是“旧的”或不再需要它们,但我确信它们在某些地方被使用是有充分理由的。

3 个答案:

答案 0 :(得分:15)

基本上,当您开发其他开发人员将使用的类时:

  • public 方法和变量是其他开发人员将(需要)使用 - 您的班级所做的< / LI>
  • private 方法和变量是您作为该类的开发人员用于使其工作的方式 - 它 您的类如何工作内部即可。

其他人需要能够使用你的课程;但不知道它是如何做到的。


如果您想了解更多信息,则必须搜索封装

答案 1 :(得分:2)

私人是与我们班级的内部工作有关的任何事情,不应该被触及(留下消毒)。例如,可能是目录的路径或Web服务的路径,对于使用该类的任何人都没有用,但在很大程度上取决于类的操作方式。

Public通常是您想要向使用该类的任何内容公开的任何内容,例如生成的值,用户名/密码配置 - (虽然类已设置[通用]功能)可能特定于< em>那个实例或运行时。

将其视为经营企业;您可以向您的客户提供服务,使他们了解您操作所需的信息(公共信息)。补充一点,你需要你自己的信息(供应商,定价等),你不希望他们知道,但需要正常运作(私人)。

答案 2 :(得分:1)

如果变量或方法是私有,则无法从外部访问对象。这样你(作为程序员)就不会直接使用它,是什么让面向对象的库的创建者改变它的内部。这些更改对您的代码是透明的,因为更改只涉及私有元素,公共API保持不变。

另一个利润就是我们所说的封装。如果数据从外部无法访问(私有),则必须要求对象为您(通过其公共API)执行操作,而不是获取其数据。它有助于以设计的方式使用对象,以便使用能够构建更大更稳定系统的对象。