前言:
现时咱们对“abstractphp”大致比较注重,各位老铁们都需要知道一些“abstractphp”的相关知识。那么小编同时在网上汇集了一些有关“abstractphp””的相关文章,希望大家能喜欢,看官们快快来学习一下吧!抽象类
抽象类是至少具有一个抽象方法的类。继承抽象类的类需要实现抽象方法。不能通过抽象类创建对象,需要通过抽象类的继承类来创建对象。
接口
对方法的抽象叫做接口。通俗点说,就是接口内的方法必须都是抽象方法。
接口的使用
接口的目的是对类进行约束,我们在开发设计的时候,如果我们想要某个类具有某些功能的话,我们就可以设计出接口,然后让其他人写的类实现我们的接口,那么我们就可以调用我们接口中的抽象方法,因为实现接口的类一定要实现接口的方法。
抽象类的使用
接口的目的是对类的功能进行约束,那么抽象类的作用更多在于复用,也就说有些方法是公用的,我们没有必要在类a中写一遍,然后在类b中写一遍,我们只要定义一个抽象类,然后a和b都继承这个抽象类,那么他们都可以直接调用这个抽象类中实现好的方法。
并且因为a和b在对同一个方法有不同的实现,这个方法就可以定义位抽象方法,让后a和b自己去实现不同的方法。可以看到抽象类既给人类提供了一些功能,又允许子类去实现自己的功能,这就是抽象类的作用。
抽象类和接口的区别在抽象类中,不必每个方法都应该抽象。但是在接口中,每种方法都是抽象的。php接口的方法必须是公共的,默认情况下不能将访问修饰符假定为公共。在方法抽象的PHP类可以是公共或保护两者。接口支持多重继承,但抽象类不支持多重继承.接口不能包含构造方法,但抽象类可以包含抽象方法。接口没有成员变量,但是抽象类有成员变量。
标签: #abstractphp