<?php class A{private function test($n){echo "11";}}class B extends A{function test(){echo "22";}}class C extends A{}$b1=new B();$b1->test();?> 此代码中父类有个private方法 PHP规则不是子类不能继承父类的private方法吗 可是我在子类内写了同名的方法 当其中一个有参数时就报错 如果两个都没有就没问题 请问为什么。。。。。 回复讨论(解决方案)这样看来 这两个方法不是都是独立的吗 为什么还要报错 弄的我很郁闷 private 私有的 私有,继承是可以继承的,但是确实不能运行加显示,你既然已经在A类中将text()设置为私有,那么虽然在C类中继承了下载,但是却是不能运行,如果你在A类中加一个公共的调用text()的方法。然后在C类中就行调用,看看可以不。版主大人真是一阵见血。 也就是说其实已经继承了一下 只是不能被运行而已 这样理解对吗 不对! class A{ private function test($n){ echo "11"; }}class B extends A{ function test($n){ echo "22"; }}class C extends A{ }print_r(get_class_methods('A'));print_r(get_class_methods('B'));print_r(get_class_methods('C')); Array private方法只是不能操作而已,不能与就没有了, 文章来源:https://www./faq/263062.html |
|