类、对象、方法

类中定义的变量称之为属性,通常属性跟数据库中的字段有一定的关联,因此也可以称作“字段”。属性声明是由关键字 public,protected 或者 private 开头,后面跟一个普通的变量声明来组成。属性的变量可以设置初始化的默认值,默认值必须是常量。

被定义为public的类成员可以在任何地方被访问。被定义为protect的类成员则可以被其自身以及其子类和父类访问。被定义为private的类成员则只能被其定义所在的类访问。

属性必须在三者中选一定义,为兼容PHP5以前的版本,如果采用 var 定义,则被视为public;方法不定义则默认为public。

一般通过->对象操作符来访问对象的属性或者方法,对于静态属性、方法则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。

受保护的属性与私有属性不允许外部调用,在类的成员方法内部是可以调用的。

被定义为受保护的类成员则可以被其自身以及其子类和父类访问。

被定义为私有的类成员则只能被其定义所在的类访问。

static关键字声明类属性或方法为静态,就可以不实例化类而直接访问。静态属性不能通过一个类已实例化的对象来访问(但静态方法可以)。

静态方法中,$this伪变量不允许使用。可以使用self,parent,static在内部调用静态方法与属性。

使用->调用属性时不需要变量符号$,使用::时则需要。

原文地址:https://www.cnblogs.com/yaohunzhanyue/p/6938619.html