多态、抽象类、魔术方法

多态

接口的方法实现可以有很多。多以对于接口里面定义的方法的具体实现是多种多样的,这种特性我们称为多态


接口A两个实现B和C,B和C对A里面定义的方式实现可以是不同的,这种现象就是多态


相同的一行代码对于传入不同的接口的实现的对象的时候,表现是不同的。这就是多态


抽象类


abstract 关键字用于定义抽象类

抽象类里面

1.可以定义方法体

2.可以定义普通方法,有方法的具体实现

继承抽象类的子类需要实现抽象类中定义的抽象方法


魔术方法


__toString()

当对象被当做string使用的时候,这个方法被自动调用

__invoke()

当对想被当做方法调用的时候,这个方法被自动调用


__call()

当对象访问不存在的方法名称的时候,这个方法被自动调用


__callStatic()

当对象访问不存在的静态方法时,被自动调用


__set()

在给不可访问属性赋值的时候 这个方法被调用

__get()

读取不可访问属性的值,方法被调用

__isset()

当对不可访问属性调用isset() 或empty() 会被调用


__unset()


当对不可访问属性调用unset()时

 

__clone()

克隆

 

 

 

 

posted @ 2017-09-03 21:11  这是一个很好的名字  阅读(182)  评论(0编辑  收藏  举报