-
1、静态属性或方法用static在访问控制的后面申明,在类的内部用“self::属性名或方法名”或“static::属性名或方法名”访问自身的静态成员,在子类用“parent::属性名或方法名”访问父类的静态成员。 2、静态成员不需要实例化对象就可以访问,在类定义外部直接使用“类名::属性名或方法名”就可以访问该类下面的静态成员。 3、在访问静态属性时::后面需要跟$符号。 4、静态属性用于保存类的公有数据,静态方法里面只能访问静态属性。 5、若想访问非静态成员仍需实例化类,这个时候可以通过静态方法去实例化自身本类,这样就无须在类定义外部进行类实例化操作。查看全部
-
父类里面定义的类成员可以不用在子类中重复定义。同一个父类的子类拥有相同的父类定义的类成员,因此外部代码调用他们的时候还可以一视同仁。在子类的对象上可以直接用$this访问父类中的方法和属性 子类可以修改和调整父类定义的类成员——称为类的重写。 在PHP中可以用extends关键字来表示类的继承,后面跟父类的类名。 PHP中extends后面只能跟一个类的类名,这就是php的单继承原则。查看全部
-
魔术方法 get set isset unset查看全部
-
魔术方法1查看全部
-
析构函数一般在程序结束后调用。如果想要提前调用,也就是说想要提前结束,那么就把对象变量设为null,同时如果存在其他引用指向这个对象的变量的话,都要将其变为null,才算该对象不再调用,已经结束。查看全部
-
基本原则:查看全部
-
$james1 = $james; //相当于复制出来多一个引用,两者是独立的两个引用。 $james2 = &$james; //相当于为james取一个别名,两者其实是一体的,只是有两个名字。 上面两张直接赋值其实都是指向同一个内存,区别就是一个是两个指向(即引用),一个是一个指向,另外那个是这个指向的别名。如果想做到真正的复制就用clone,这里就会有两个内存,修改其中一个属性,另外一个的属性也不会跟着变。查看全部
-
析构函数一般在程序结束后调用。如果想要提前调用,也就是说想要提前结束,那么就把对象变量设为null,同时如果存在其他引用指向这个对象的变量的话,都要将其变为null,才算该对象不再调用,已经结束。查看全部
-
类的概念查看全部
-
面向对象的基本思路查看全部
-
面向对象的基本原则查看全部
-
面向对象的实质,虽然还是有点模糊查看全部
-
__toString()当对象被当做string使用时自动调用 __invoke()当对象被当做方法使用时自动调用查看全部
-
常用的查看全部
-
因为接口的方法实现可以有很多,所以对于接口里面定义的方法具体实现是多种多样的,这种特性我们称之为多态 checkeat($obj); checkeat($monkey);查看全部
举报
0/150
提交
取消