阅读949 返回首页    go Php编程


PHP类的static静态属性和静态方法

PHP类中包含属性和方法,在实例化一个对象的时候,每一个对象都拥有自己的属性和方法的拷贝。但是有一种情况例外,那就是类里面的静态属性和静态方法,今天就来了解一下类里面的静态属性和静态方法。

静态属性

和常规属性不同,类的静态属性属于类本身,而不属于任何类的实例,它们也被叫做类属性。你可以在任何地方通过类来访问静态属性,因此你也可以把静态属性认为是存储在类当中的全局变量。

静态属性是用static关键字定义的,静态属性的访问在类里面使用self::在类外面使用类名::。下面来看一个例子:

执行结果如下:

可以看到静态属性并不是属于某一个对象的,任何一个对象改变了它的值都是对整个类生效的。

静态方法

和静态属性相似,静态方法也是属于类本身,而不属于任何类的实例,多以你可以不创建对象而直接通过类名直接调用。注意特殊变量$this是对对象本身的引用,由于静态方法不属于任何对象,所以静态方法里面不能使用$this。由于静态方法可以直接通过类名来在任何地方调用,而不必实例化,所以你可以把它当做全局方法来用,但是要注意这时静态方法需要为public,而不能是protected和private,否则只能在类里面用self来调用。下面来看一个例子:

执行结果如下:

执行结果如下:

最后更新:2017-10-08 21:36:21

  上一篇:go PHP7 性能翻倍关键大揭露
  下一篇:go PHP类中访问权限关键字介绍