接口和抽象类的优点是什么?
可能重复:
类的接口的目的
界面和抽象类有什么区别?
嗨,我是一名PHP程序员。 任何机构都可以解释使用接口和抽象类的优点。
一个接口的主要优点是它允许你定义一个协议来实现一个对象有一些行为。 例如,您可以使用一个Comparable接口和一个比较方法来实现类,每个实现它的类都会有一个标准化的比较方法。
抽象类允许你为几个具体的类定义一个公共基础。 例如,假设您想定义代表动物的类:
abstract class Animal {
abstract protected function eat();
abstract protected function sleep();
public function die() {
// Do something to indicate dying
}
}
在这种情况下,我们将eat()
和sleep()
定义为抽象的,因为从Animal
继承的不同类型的动物(例如狮子,熊等)以不同的方式进食和睡眠。 但是所有的动物都以同样的方式死亡(不要让我这么做),所以我们可以为此定义一个共同的功能。 使用抽象类帮助我们1.)声明了所有Animal
应该具有的一些常用方法,并且2.)定义Animal
的共同行为。 所以,当你扩展Animal
,你不必重写die()
的代码。
上一篇: What are the advantages of interfaces and abstract classes?
下一篇: what's the difference between abstract and interface in php?