-
子类可以修改和调整父类定义的一些成员,称为重写查看全部
-
在php中可以用extends关键字来表示类的继承,后面跟父类的类名。php中extends后面只能跟一个类的类名,这就是php的单继承原则。查看全部
-
1.parent关键字可以可用于调用父类中被子类重写了的方法 2.self关键字可以用于访问类自身的成员方法,也可以用于访问自身的静态成员和类常量;不能用于访问类自身的属性;使用常量的时候不需要再常量名称前面添加$符号 3.static::关键字用于访问类自身定义的静态成员,访问静态属性时需要在属性前面添加$符号。 4.常量属性不能使用对象访问,仅能使用类访问,在类本体内,可以使用“self::常量名”,在类本体外可以使用“类名::常量名查看全部
-
我们需要理解的一些关于PHP5对象的一些概念: 1、php对象是通过引用来使用的。 2、什么时候才会调用析构函数呢,当然对象的所有引用都等于null的时候查看全部
-
我们使用php5的对象,都是通过引用的这种方式来使用的,那引用是什么呢? 引用,用比喻的方式来讲,就是,比如,你叫刘慧,别人叫这个名字,那么就等同于叫你这个人,你这个人就是一个对象,那么这个名字就是对你这个人的引用。 视频里面的&又有什么用呢?怎么理解呢? 首先,&作用就是引用传值, 既然,php的对象本身就是通过引用的方式来使用的,那,再加&,不就是,引用后再引用了么? 具体php5是怎么做的呢? 堆栈、内存地址,不知道大家了解不? 比如,对象Nb的内存地址是0x0001,有个变量$a = new Nb(); 那么$a的值是什么呢,就是内存地址0x0001,就指向这个Nb对象 $b = $a; 那么$b的值是什么呢,还是内存地址0x0001,也是指向Nb对象,那么把$a = null ,那么对$b也没有影响,$b还在使用Nb对象,那么,$a = null的时候,是不会调用析构函数的 那么,$c =& $a; $c的值是什么呢? 首先,&是引用传值,所以,$c的值是变量$a的内存地址,假如,$a的内存地址是0x0101,那么,$c的值就是0x0101,指向$a 假如Nb类里面有个eat方法,那么我们调用$c->eat();时,是怎样个过程呢,那就是,$c通过自己的值0x0101找到$a,$a通过自己的值0x0001找到Nb这个对象,然后,就调用了eat这个方法。查看全部
-
如果是static则说明无论生成多少个对象,对此变量的修改都是公共的,就像class home,里面有个wc厕所,如果new了之后,则每个对象有一个厕所,再怎么使用都不会影响别人家的厕所,如果是static wc,则可以理解为公共厕所,相互使用都会改变厕所本身,比如任何一个对象如果对厕所使用了打扫方法,则其他对象也享受到了打扫方法。查看全部
-
面向对象的基本原则: 一、对象内部都是高内聚的 对象只负责一项特定的只能(职能可大可小) 所有对象相关的内容都封装到对象内部 二、对象对外是低耦合的 外部世界可以看到对象的一些属性(并非全部) 外部世界可以看到对象可以做某些事(并非全部查看全部
-
面向对象的基本思路 第一步:识别对象 -任何实体都可以被识别为一个对象 第二部:识别对象的属性 -对象里面存储的数据被识别为属性 -对于不同的业务逻辑,关注的数据不同,对象里面存储的属性也不同 第三步:识别对象的行为 -对象自己属性数据的改变 -对象和外部交互查看全部
-
__clone查看全部
-
$obj1 = $ojb; 不能实现对象复制,两个对象变量指向同一对象 $obj1 = clone $obj; 实现对象复制,变成值相同的两个对象 调用clone时自动调用__clone()方法查看全部
-
__get() __set __isset __unset查看全部
-
__call __staticCall 方法注意查看全部
-
__call __cakkStatic 两个方法的的概念查看全部
-
__tostring __invoke 两个魔术方法调用的时机查看全部
-
__tostring __invoke查看全部
举报
0/150
提交
取消