gpt4 book ai didi

PHP, OOP, 不同的表述

转载 作者:行者123 更新时间:2023-12-02 22:41:01 25 4
gpt4 key购买 nike

我正在研究AbstractInterface 之间的区别,我读了一些句子说

A child class can only extend a single abstract (or any other) class, whereas an interface can extend or a class can implement multiple other interfaces.

当他说“一个子类只能扩展一个抽象(或任何其他)类”时,我理解他的意思:

class first
{
public function Search()
{
return 'Hellow';
}
}

abstract class first2 extends first
{

}

class second extends first2
{

}

$ob = new second();
echo $ob->Search();

但是,我没听懂他说的“而一个接口(interface)可以扩展,或者一个类可以实现多个其他接口(interface)”这句话的其余部分。

有人可以解释一下他的最后一句话并添加一个代码示例吗?谢谢大家,祝你有美好的一天。

最佳答案

你可以实现多个接口(interface)

interface C {
public function method1();
}

interface D {
public function method2();
}

class A implements C,D {

//implement from interface C
public function method1() {

}
//implement from interface D
public function method2() {

}
}

在这里您需要实现接口(interface) C 和 D 的方法。您还可以在接口(interface)内扩展接口(interface),就像普通类一样。

interface D extends C{}

当您需要一些常用方法时,它很有用。所以你将“模式”写入接口(interface),你期望从基类实现什么方法。

虽然抽象是单个扩展类,但您不能为其创建实例,只能扩展。当您想要一些具有通用功能的基类或应该稍后实现的抽象方法时,它很有用。

您可以随时在 php.net - interfaces 阅读更多内容

关于PHP, OOP, 不同的表述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10764570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com