接口是类的模板,类是对象的模板。
使用关键字interface 定义了一个接口Person,接口中有两个方法;
使用关键字implements实现了接口,实现类Man里需要实现接口中的所有方法,否则会报错。
L类中的factory方法是调用接口的一个例子,其中传入的参数$user 使用了 Person 接口进行了类型限制,说明传入的参数必须是实现了Person接口的类(比如说Man类)。
接口可以被多次实现,比如把代码中的Man类复制粘贴改成Woman类,就是另外一次实现接口了。
接口也是可以被继承的:
直接实现多个接口也可以:
接口常量使用 const定义
调用:
抽象类的使用:
使用关键字abstract 定义抽象类,抽象类跟接口不同的是,抽象类里可以实现具体的方法,比如holiday,子类继承抽象类的时候,是可以直接调用holiday的。