很多东西不经常用就会忘记,当你去面试的时候别人问的细你会发懵,这里稍微总结下:
一、什么是抽象类
抽象类其实跟父类的方法有点类似,避免子类重复写一些功能,只需要继承这个类就拥有了父类的所有方法,不同的是抽象类会去定义抽象方法,子类继承的时候必须实现抽象方法,因此适用于一些有固定规范的情形
二、抽象类特性
1、不能直接实例化,必须先继承,然后再实例化子类
立即学习“PHP免费学习笔记(深入)”;
2、抽象类至少要包含一个以上的abstract方法,这些方法就是子类必须要实现的方法,其他的方法子类直接继承,可以覆盖
// 强制要求子类定义这些方法 abstract protected function getValue(); abstract protected function prefixValue($prefix); // 普通方法(非抽象方法) public function printOut() { print $this->getValue(); }3、子类必须实现抽象类中定义的抽象方法,并且方法的可见性必须和抽象类中一样(或者更为宽松)。如果抽象类中某个抽象方法被声明为protected,那么子类中实现的方法就应该声明为protected或者public,而不 能定义为private
三、什么是接口类
PHP5学习对象教程由美国人古曼兹、贝肯、瑞桑斯编著,简张桂翻译,电子工业出版社于2007年12月1日出版的关于PHP5应用程序的技术类图书。该书全面介绍了PHP 5中的新功能、编程方法及设计模式,还分析阐述了PHP 5中新的数据库连接处理、错误处理和XML处理等机制,帮助读者系统了解、熟练掌握和高效应用PHP。
291
接口是一种规范,他不去定义方法的实现,只要求我这些接口必须被实现,具体怎么实现是你的事
四、接口类的特性
1、接口类的所有方法都只包含声明(方法名称跟入参),不能包含方法体
interface SyncAccountInterface{ public function syncLogin($userId); public function checkUsername($username, $randomName = '');}2、接口类的所有方法都必须在实现接口类的方法中都实现,,少一个实现就会报错
3、一个类可以实现多个接口,接口可以解决类的继承不能继承多个类的问题
五、抽象类跟接口类的异同
1、抽象类跟接口类都包含了子类必须去实现的方法,不同的是抽象类还可以包括其他方法子类不用去实现,直接继承或覆盖这些方法,但标识为abstract的方法必须去实现。接口类不同,里面所有的方法子类必须去实现。
2、一个类只能继承一个类,但可以实现多个接口,因此在不同的使用场合我们需要抽象类,也需要接口,根据使用场合定
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号