PHP静态方法与非静态方法的区别
2017-07-18 18:36
417 查看
PHP静态方法与非静态方法的区别
php编程中,static关键字声明一个属性或方法是和一个类相关的,而不是和类的某个特定的实例相关的,因此这类属性或方法也称为“类属性”或“类方法”如果访问控制权限允许,可不必创建该类对象而直接使用类名加两个冒号“::”调用。
static关键字可以用来修饰变量、方法。
不经过实例化,就可以直接访问类中static的属性和static的方法。
static 的属性和方法,只能访问static的属性和方法,不能类访问非静态的属性和方法。因为静态属性和方法被创建时,可能还没有任何这个类的实例可以被调用。
static的属性,在内存中只有一份,为所有的实例共用。
使用self:: 关键字访问当前类的静态成员。
一、一个类的所有实例,共用类中的静态属性。
即在内存中即使有多个实例,静态的属性也只有一份。二、静态属性直接调用
静态属性不需要实例化就可以直接使用,在类还没有创建时就可以直接使用。使用方式:
类名:: 静态属性名
类没有创建,静态属性就可以直接使用。
静态属性和方法,在类被调用时创建。
三、静态方法
静态方法不需要所在类被实例化就可以直接使用。使用的方式是类名::静态方法名
一个静态方法调用其它静态方法时,使用self:: ,使用self::调用本类的静态属性
注意
1. 静态方法不能调用非静态属性 。不能使用self::调用非静态属性。 2. 也不能使用 $this 获取非静态属性的值 3. 在静态方法中不能使用 $this 标识调用非静态方法。 4. 当一个类中有非静态方法被self:: 调用时,系统会自动将这个方法转换为静态方法。
相关文章推荐
- 浅析php静态方法与非静态方法的用法区别
- php静态方法与非静态方法用法区别详解
- static 静态方法 有什么优缺点 PHP中静态方法(static)与非静态方法的使用及区别
- PHP中静态方法(static)与非静态方法的使用及区别
- php静态方法与非静态方法在性能上有什么区别?
- PHP中静态方法(static)与非静态方法的使用及区别
- PHP中静态方法(static)与非静态方法的使用及区别
- PHP中静态方法(static)与非静态方法的使用及区别
- PHP中静态方法(static)与非静态方法的使用及区别
- static 静态方法 有什么优缺点 PHP中静态方法(static)与非静态方法的使用及区别
- PHP中静态方法(static)与非静态方法的使用及区别
- 浅析php静态方法与非静态方法的用法区别
- 浅析php静态方法与非静态方法的用法区别
- static 静态方法 有什么优缺点 PHP中静态方法(static)与非静态方法的使用及区别
- php静态方法和实例方法的区别
- 静态方法与非静态方法的区别
- php中静态方法和普通方法的区别初探(一)
- PHP中 static 静态方法有什么优缺点 静态方法与非静态方法的使用及区别
- PHP静态方法和非静态方法的区别
- 静态方法与非静态方法的区别