가능하여 키워드/주석, @override
등PHP에서 재정의 하시겠습니까? <code>implements</code> 같은 우리가 함수를 재정의 할 수 있습니다 자바와 같은 다른 객체 지향 언어에서
PHP에서 그렇게 할 수있는 방법이 있나요? 내 말은, 예 :
class myClass {
public static function reImplmentThis() { //this method should be overriden by user
}
}
나는 사용자가 자신의 myClass::reImplementThis()
메서드를 구현하기를 원합니다.
PHP로 어떻게 할 수 있습니까? 가능하면 옵션으로 만들 수 있습니까?
사용자가 메서드를 구현하지 않은 경우 기본 메서드를 지정할 수 있습니까? 아니면 메서드가 정의되지 않았 음을 나타낼 수 있습니까? method_exists
을 사용하여이 작업을 수행 할 수 있습니까?
정확히 상속을위한 것입니다. http://php.net/manual/en/language.oop5.inheritance.php –
일반적으로 정적이 아닌 객체로 만들면 사용자는 myClass를 확장 할 수 있습니다. 즉, reImplmentThis를 재정의할지 여부를 선택합니다 ()'. 기본 구현이 수용 가능한 경우 사용자 구현의 존재 여부를 테스트 할 필요가 없습니다. – halfer
당신은 final 클래스를 사용하여 (halfer가 말하는 것처럼) 확장 할 수 있고 인터페이스 클래스 (http://www.killerphp.com/articles/php-interfaces/)를 사용하여 final 클래스가 최소한 함수를 갖도록 할 수 있습니다 당신이 지정합니다. 나는 단지 잘못 (인터페이스)에 대해서 배울 뿐이지 만, 내가 읽은 것에서는 그것을 가지고있는 것 같다. – qooplmao