发布网友 发布时间:2022-04-06 01:09
共2个回答
懂视网 时间:2022-04-06 05:30
php中静态方法继承的方法:使用override函数进行继承,代码为【function write(){echo 'I can be overriden!';}static function no_write()】。
php中静态方法继承的方法:
之前一直对子类能否对静态函数进行override,故写了段测试代码,代码如下:
<?php Class A { var $a='I/'m A'; function write() { echo 'I can be overriden!<br />'; } static function no_write() { echo 'Can I be overriden?<br />'; } } Class B extends A { function write() { echo 'Override from A successfully!<br />'; } static function no_write() { echo 'Can I override successful?<br />'; } } $a=new A; $a->write(); $a->no_write(); $b=new B; echo $b->a.'<br />'; //Attributes can be inherited $b->write(); $b->no_write(); //static methods can be overriden ?>
运行结果如下:
I can be overriden! Can I be overriden? I'm A Override from A successfully! Can I override successful?
所以说,静态函数在子类里是可以被override的,但是在java里就不太清楚了,准备自己再写些代码测试下。a
相关免费学习推荐:php编程(视频)
热心网友 时间:2022-04-06 02:38
在本类中,protected与private是相同的,但protected可以被继承,而private却不行。
只有公有成员才能在类的外部访问。如class A{private:int a;public:int b;protected:int c;};A ca;ca.a //error
ca.b // ok
ca.c //error
cb.c //error。虽然c也是B的成员,但c在被继承的时候变成私有或者受保护的成员了。