gpt4 book ai didi

php - 为什么要实现两个已经相互扩展的接口(interface)?

转载 作者:搜寻专家 更新时间:2023-10-31 21:40:47 25 4
gpt4 key购买 nike

我想了解一些关于 ArrayObject 的事情和 ArrayIterator

ArrayObject:此类实现了 IteratorAggregateTraversable接口(interface)。由于 IteratorAggregate 扩展了 Traversable 本身,为什么 ArrayObject 既可以实现 IteratorAggregate 又可以同时实现这两者?

ArrayIterator:同上,这个类同时实现了IteratorTraversableIterator 扩展。

当这些类可以实现扩展 Traversable 的接口(interface)时,为什么它们要实现两个接口(interface)?

最佳答案

根据SPL source code , ArrayObject 没有直接实现Traversable:

class ArrayObject implements IteratorAggregate, ArrayAccess, Countable
{
...
}

这与 SPL documentation 匹配.我相信 DaveRandom 是正确的。

关于php - 为什么要实现两个已经相互扩展的接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11365902/

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