gpt4 book ai didi

php对象子使用其他子函数

转载 作者:可可西里 更新时间:2023-11-01 00:15:33 25 4
gpt4 key购买 nike

有没有可能

扩展类的扩展,例如:

class a {
}
class b extends a {
}
class c extends b {
}

编辑:

[或类 c 可以使用仅在 b 中定义但不在 a 中定义的函数的其他方式。]

好吧,我只是注意到我的问题有点困惑。 c 应该能够使用所有功能,当然 a 的功能也是如此。

我将只接受解决我不存在的问题的答案,以防有人搜索此问题。

最佳答案

从 PHP 5.4 开始,您可以使用可能对您有帮助的特征。您可以定义两个特征,一个包含类 a 具有的功能,一个包含类 b 具有但不包含类 a 的功能。

所以:

trait TraitA {
function a1() { }
function a2() { }
}

trait TraitB {
function b1() { }
function b2() { }
}

然后你可以定义一个只使用TraitA的类a,一个使用两个特征的类b,和一个类 c 仅使用 TraitB:

class a {
use TraitA
// contains a1 and a2
}

class b {
use TraitA, TraitB
// contains a1, a2, b1 and b2
}

class a {
use TraitB
// contains b1 and b2
}

关于特征的更多信息:http://php.net/manual/en/language.oop5.traits.php请记住,您必须注意不同特征之间的函数名称。您不能在两个特征中使用相同的函数名,否则会发生冲突。

关于php对象子使用其他子函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12264996/

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