纠结这个地方应该怎样实现。

假设我这里有个类A、B




class A{

//很多很多方法

}

class B extends A {

	//假设比A多两个

	public function fa() {}

	public function fb() {}

}



我想把B的行为绑定在某个Component上,B就必须继承自CBehavior,而B现在已经继承了A,不能多继承了,如果用IBehavior就要重复实现接口中的方法。

如果写一个类C,让它引用B来实现A、B中的所有方法,那么就要在C中重复写A、B的方法,并且AB有改动时,又要改C。

这种情况我该做呢样做比较好呢? 求解。

A继承Ccomponent

A 好像不能在继承别的类了,因为他是一个 php 扩展。

还是不明白,B继承A,C继承B,那C不就有了A,B的方法了吗?为什么还要在C中重复写A,B的方法

我的啥意思是说,A是一个[color="#FF0000"]php extension[/color] ,不是在php代码中 class A … 这样定义出来的。而是由C代码编译进去的。

我想让一个 CComponent 拥有 A 的 Behavior 。该怎么做?

php extension 一般都是implement ,可以被当作接口实现的,比如标准库里面的SPL