PHP5面向对象的一些问题反映 - Go语言中文社区

PHP5面向对象的一些问题反映


大家也许对PHP5面向对象已经不再陌生,虽然对一些问题的反映虽然加强了很多,但还有很多东西比起java的面向对象弱了很多。有些东西甚至让人费解,就比如下面的PHP5面向对象代码,b extends a ,实例化b时a的构造函数却没执行?不知道实例化b时,PHP到底是怎么执行的,高手来帮忙解惑!还有PHP的static成员竟然能在非static方法中使用,还好反过来会报错。

好了,先将代码贴出来
  1. class a {     
  2.     
  3.     function __construct() {     
  4.         echo "a";     
  5.     }     
  6. }     
  7. class b extends  a{     
  8.     function __construct(){     
  9.           
  10.         echo "b";     
  11.     }     
  12.          
  13.     private $x=100;     
  14.    public  static  function getx(){     
  15.            
  16.       return $this->x;      
  17.    }     
  18. }     
  19. $x=new b();     
  20. echo $x->getx();    

结果是:

b100

“a”竟然没有输出,真不知到PHP5面向对象里类初始化的顺序。

【责任编辑:曹凯 TEL:(010)68476606】

点赞 0
版权声明:本文来源51CTO,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:http://developer.51cto.com/art/200911/164457.htm
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-16 12:31:29
  • 阅读 ( 804 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢