还是回答他 类的实例化可以称之为对象?哎,想起来以前老师的一句话,php是尼玛“面向数组的编程”.虽然是句玩笑,但是php数组 无所不在 无孔不入。
牢骚发完,温故知新吧。
static 的属性和方法,只能访问static的属性和方法,不能类访问 非静态的属性和方法。因为静态属性和方法被创建时,可能还没有任何这个类的实例可以被调用
静态方法
static关键字用来修饰属性、方法,称这些属性、方法为静态属性、
静态方法。
static键字声明一个属性或方法是和类相关的,而不是和类的某
个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法
如果访问控制权限允许,可不必创建该类对象而直接使用类名加
两个冒号“::”调用
static的属性,在内存中只有一份,为所有的实例共用。
使用self::?关键字访问当前类的静态成员
一个类的所有实例,共用类中的静态属性
静态属性不需要实例化就可以直接使用,在类时就可
以直接使用。
方式: 类名::静态属性名
静态属性和方法,在类被调用时创建。(类被调用,是指类被创建或者类中的任何静态成员被调用。)
调用当前类种的其他静态方法 可以用 self:: (使用self时 这个self 代表的是类的静态成员 与 $this 不同,$this 指当前对象) 也可以使用 类名:: 建议使用self::
当一个类中有非静态方法被 self:: 调用时,系统会自动将这个方法转换为静态方法
构造函数是在被实例化的时候 被创建的。
final 关键词 只能修饰类,方法 不能修饰属性 final 方法不可被继承,不可被覆盖 (呵呵 我用final abstract 同时修饰 function 报 不能用final 修饰 abstract )
abstract 抽象的。 修饰一个类 一个方法
抽象的类 不能被实例化,抽象方法不能有方法体(也就是不能有{} 要以;结尾)