A. 在php中抽象类实现接口具体给例子解释一下!
面向对象的三大概念:封装,继承,多态
把属性和方法封装起来就是类。
一个类的属性和方法被另外的类复制就是继承,PHP里面的任何类都可以被继承,被继承的属性和方法都可以被子类重新定义,这就是多态性。
抽象类和抽象方法:
所谓抽象方法就是只有名字的空“函数”,而且抽象方法必须是空方法。
所谓抽象类就是包含抽象方法的类,同时抽象类也可以包含普通方法。
因为抽象方法必须是空方法,所以任何子类在继承抽象类的时候,都必须重新定义抽象方法的具体内涵,才能实现实例化。
接口:
只包含抽象方法的特殊抽象类。
换句话说,接口类中不允许存在普通方法和属性。
B. PHP抽象类如何定义,PHP抽象类的应用规则
要充分发挥抽象类的特点,就必须牢记以下规则 1.某个类只要包含至少一个抽象方法就必须声明为抽象类. 2.声明为抽象的方法,在实现的时候必须包含相同的或者更低的访问级别.例如,如果某个方法在抽象类中的访问级别是受保护的,在继承类中它就必须是受保护的或者是公共的,而不能是私有的. 3.不能使用new关键字创建抽象类的实例. 4,被声明为抽象的方法不能包含函数体 5.如果将扩展的类也声明为抽象的,在扩展抽象类时,就可以不用实现所有的抽象方法.在创建具有层次的对象时,这种做法是很有用的.在类的声明中使用 abstract 修饰符就可以将某个类声明为抽象的,下面的代码是定义一个抽象类,其中包含了一个具有完整实现的方法和一个将在继承类中实现的抽象方法定义抽象基类: