php中抽象类和接口的对比
source link: https://www.80shihua.com/archives/2648
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
php中抽象类和接口的对比
抽象类是至少具有一个抽象方法的类。继承抽象类的类需要实现抽象方法。不能通过抽象类创建对象,需要通过抽象类的继承类来创建对象。
对方法的抽象叫做接口。通俗点说,就是接口内的方法必须都是抽象方法。
接口的使用
接口的目的是对类进行约束,我们在开发设计的时候,如果我们想要某个类具有某些功能的话,我们就可以设计出接口,让后让其他人写的类实现我们的接口,那么我们就可以调用我们接口中的抽象方法,因为实现接口的类一定要实现接口的方法。
抽象类的使用
接口的目的是对类的功能进行约束,那么抽象类的作用更多在于复用,也就说有些方法是公用的,我们没有必要在类a中写一遍,让后在类b中写一遍,我们只要定义一个抽象类,然后a和b都继承这个抽象类,那么他们都可以直接调用这个抽象类中实现好的方法。
并且因为a和b在对同一个方法有不同的实现,这个方法就可以定义位抽象方法,让后a和b自己去实现不同的方法。可以看到抽象类既给子类提供了一些功能,有允许子类去实现自己的功能,这就是抽象类的作用。
抽象类和接口的区别
-
在抽象类中,不必每个方法都应该抽象。但是在接口中,每种方法都是抽象的。
-
php接口的方法必须是公共的,默认情况下不能将访问修饰符假定为公共。在方法抽象的PHP类可以是公共或保护两者。
-
接口支持多重继承,但抽象类不支持多重继承.
-
接口不能包含构造方法,但抽象类可以包含抽象方法。
-
接口没有成员变量,但是抽象类有成员变量。
Recommend
-
66
-
45
这几天给别人讲JavaSE基础,又把面向对象看了一遍,讲的时候发现一个问题,就是当时讲抽象类和接口的时候说接口也是抽象类,是个特殊的抽象类,当时听的时候别人确实能听懂,因为确实没多少东西,但是真正用的时候总会犹豫,到底什么时候...
-
13
1. 接口 接口(硬件类接口)是指同一计算机不同功能层之间的通信规则。 接口(软件类接口)是指对协定进行定义的引用类型。其他类型实现接口,以保证他们支持某些操作,接口指定必须由类提供的成员或实现它的其他接口。与类相似...
-
8
-
3
抽象类表示接口。 ——Bjarne Stroustrup, C++ 之父 本章讨论的话题是接口: 从鸭子类型的代表特征动态协议,到使接口更明确、能验证实现是否符合规定的抽象基类(Abstract Base Class, ABC)。...
-
2
🔎这里是JAVA成仙路,关注我学习JAVA不迷路 👍如果对你有帮助,给博主一个免费的点赞以示鼓励 欢迎各位🔎点赞👍评论收藏⭐️ 前言:本章具体介绍了抽象类和接口,整篇文章用目前流行的手机来举例,图解穿插代码案例。JAVA成...
-
2
微信支付PHP开发对接18讲——03: AesInterface AES抽象接口 2021-07-01 之所以把这个接口文件单独拿出来讲,主要是为了阐明三件事情: PHP7 可以在...
-
2
C++纯虚函数和抽象类简介(Brief)在面向对象的设计中,c++使用virtual关键字后 “=0”定义一个纯虚函数,纯虚函数实现了抽象类,抽象类不能产生任何实例,仅提供借口。Often in a design, you want the ba...
-
2
Python标准库: abc模块——抽象类和抽象方法的实现 May 30, 2018 工具,
-
4
使用Thread类和Runnable接口实现多线程的区别 先看两种实现方式的步骤: public class ThreadDemo{ public static void main(String[] args) { for (int i = 0; i < 5; i++...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK