> 백엔드 개발 > PHP 문제 > PHP의 클래스 이름과 메소드 이름이 같을 수 있습니까?

PHP의 클래스 이름과 메소드 이름이 같을 수 있습니까?

王林
풀어 주다: 2023-03-06 08:00:02
원래의
3379명이 탐색했습니다.

PHP의 클래스 이름과 메소드 이름은 동일할 수 있습니다. 메서드 이름이 클래스 이름과 동일하고 __construct가 없으면 메서드는 생성자로 처리됩니다. 생성자로 사용되고 [parent::__construct();]가 없으면 부모 클래스의 생성자는 실행되지 않습니다.

PHP의 클래스 이름과 메소드 이름이 같을 수 있습니까?

메서드 이름의 클래스 이름이 같고 __construct가 없으면 해당 메서드는 생성자로 처리됩니다.

(추천 튜토리얼: php 비디오 튜토리얼)

생성자로 사용되고 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 training

위 내용은 PHP의 클래스 이름과 메소드 이름이 같을 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿