您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

interface - php多接口方法重复问题

2025/11/12 17:04:44发布32次查看
interface a { public function code();}interface b { public function code(string $string);}class c implements a,b {//...code}

当c同时需要实现这两个接口的时候,有什么方法同时使用 a,b两个接口中的code方法????
本地测试只能使用其中一个方法
回复内容: interface a { public function code();}interface b { public function code(string $string);}class c implements a,b {//...code}

当c同时需要实现这两个接口的时候,有什么方法同时使用 a,b两个接口中的code方法????
本地测试只能使用其中一个方法
php不能overloading(同方法名,但参数不一致),能够在继承中overriding(同方法名,且不论参数是否一致)。
也就是说php的参数如何变,只要方法名字一样都被当做本类的同一个方法。
当然作为动态语言,我们可以通过魔法方法模拟java的overloading参考:http://php.net/manual/en/lang...
有个粗挫的方法,你把ab接口的具体逻辑都整合到c接口里面,直接调用c接口^_^
func_get_args http://php.net/manual/en/func...
本身这种写法就是个尝试错误,公用方法写在外面,类中直接调用,不要每一个口都写个一样的,维护起来也巨麻烦
可以了解一下php的性状。
php不支持多态, 所以最好避免这种写法
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product