abstract和interface
abstract类用abstract关键字定义该类为抽象类,在抽象类中可以包含有具体实现的方法,也可以包含不需要具体实现的抽象方法,需要在方法体的前面添加abstract,如abstract public function a();继承抽象类的关键字是extends,class AA extends interfaceName{}。在AA类中,必须实现抽象类中定义的抽象方法,在AA类总,抽象类中有具体实现的方法可以当做是公共的方法,其子类都可以访问,可以不进行重写。
interface是对不同类的共同方法的定义,如人和动物都需要吃东西,但是吃的东西不同。用interface关键字用来定义接口,接口中的方法不需要具体的实现。implement用来实现接口 class BB implement ICa{},在BB中,必须提供接口中定义的方法的具体实现。