php中类名与方法名能不能取相同

这篇文章主要介绍了php中类名与方法名能不能取相同,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

php中类名与方法名可以相同。如果方法名同类名相同,且没有__construct,那么该方法会被当做构造函数。如果被当做构造函数,且没有【parent::__construct();】,那么父类的构造函数也不执行。

如果方法名同类名相同,且没有__construct,那么该方法会被当做构造函数。

如果被当做构造函数,且没有parent::__construct();,那么父类的构造函数照样不执行。

举例:

//php 5.6
class father{
  public function __construct() {
    echo __METHOD__;
  }
}
class son extends father{
  //public function __construct() {
  //  parent::__construct();
  //  echo __METHOD__;
  //}
  public function son() {
    //parent::__construct();
    echo __METHOD__;
  }
}
$a=new son();

感谢你能够认真阅读完这篇文章,希望小编分享php中类名与方法名能不能取相同内容对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!