PHP

PHP 知识量:7 - 20 - 67

6.3 作用域><

公开的- 6.3.1 -

php的类属性和方法有三种作用域,分别是公开的(public)、保护的(protected)和私有的(private)。

公开的作用域是指,类定义的属性和方法可以在所有作用域中使用和访问,也就是说可以在任何地方直接调用,它们对外界是可见的。

定义公开的作用域的方式是在类属性名和方法名的前面使用“public”关键字进行标注。

在php中,如果没有明确的定义作用域标示,即省略不写,则默认是公开的。

保护的- 6.3.2 -

保护的作用域是指,类定义的属性和方法仅允许被类自己和父类或继承它的类访问。也就是说保护的属性和方法仅能在有“直系血缘关系”的类中被调用,它们对外界是不可见的。

定义保护的作用域的方式是在类属性名和方法名的前面使用“protected”关键字进行标注。

私有的- 6.3.3 -

私有的作用域是指,类定义的属性和方法仅能被自己访问。这是最为严格和“保守”的访问规则,当然也是最安全的。类定义的属性和方法对外界是完全不可见的。

定义私有的作用域的方式是在类属性名和方法名的前面使用“private”关键字进行标注。

应用策略- 6.3.4 -

在php类的作用域设置中,如果要提供外部访问的接口就应当设置为公开的(public),如果要提供安全的数据保护就应当设置为私有的(private)。

一个类最好的访问策略是:将类的属性设置为私有的,并设置公开的get和set方法(访问器),这样既能保护数据,又能便于访问和通信。