编写类时接口的用途是什么?
这是我在网上看到的一个例子。
<?php
interface Chargeable {
public function getPrice();
}
class Employee implements Chargeable {
protected $price;
public function getPrice() {
return $this->price;
}
}
$product = new Employee();
?>
发布于 2009-03-02 01:54:26
接口是面向对象编程中的一个概念,它支持多态性。基本上,接口就像一个契约,实现它的类同意提供某些功能,以便它们可以像使用该接口的其他类一样使用
您的示例显示了保证它们具有可用的getPrice方法的类。然后,您可以编写利用具有此方法的对象的代码,而不必担心它是哪种类型的类。
发布于 2009-03-02 01:55:31
接口允许您将接口与实现分开。当你想在你的代码中有正交性的时候,这是很方便的。
基本上,您将能够创建接受Chargeable
的函数,并且能够在其中传递任何对象,只要它实现了Chargeable
。这允许您在需要更改Employee
类时更加灵活。此外,它还允许您的方法接受任何“可收费”的对象。
发布于 2009-03-02 09:13:26
在具有多重继承而不是接口的语言中,您有抽象类。在PHP中没有多重继承,所以你有接口。一个类可以实现各种接口。唯一的问题是保证你的类有一组特定的方法。
https://stackoverflow.com/questions/601034
复制相似问题