상속은 잘 알려진 프로그래밍 기능이며, PHP의 객체 모델도 상속을 사용합니다. 상속은 클래스와 객체 간, 객체 간 관계에 영향을 미칩니다.
예를 들어 클래스를 확장하면 하위 클래스는 상위 클래스의 모든 공개 및 보호 메서드를 상속합니다. 하위 클래스가 상위 클래스의 메서드를 재정의하지 않는 한 상속된 메서드는 원래 기능을 유지합니다.
상속은 기능적 디자인과 추상화에 매우 유용하며 유사한 객체에 새로운 기능을 추가하면 이러한 공통 기능을 다시 작성할 필요가 없습니다.
참고:
자동 로딩을 사용하지 않는 한, 사용하기 전에 클래스를 정의해야 합니다. 한 클래스가 다른 클래스를 확장하는 경우 상위 클래스는 하위 클래스보다 먼저 선언되어야 합니다. 이 규칙은 다른 클래스와 인터페이스를 상속하는 클래스에 적용됩니다.
예제 #1 상속 예
class foo { public function printItem($string) { echo "Foo:".$string.PHP_EOL; } public function printPHP() { echo "PHP is great.".PHP_EOL; } } class bar extends foo { public function printItem($string) { echo "Bar:".$string.PHP_EOL; } } $foo = new foo(); $bar = new bar(); $foo -> printItem('baz'); $foo -> printPHP(); $bar -> printItem('baz'); $bar -> printPHP();
출력 결과:
Foo:baz
PHP는 훌륭합니다.
바: baz
PHP는 훌륭해요