이 기사에서는 특정 참조 값이 있는 PHP의 객체 지향 상속을 주로 소개합니다. 이제 모든 사람과 공유합니다. 도움이 필요한 친구가 참조할 수 있습니다. —
공개 및 보호 속성과 메서드. 키워드상속을 사용하세요. 한 클래스가 다른 클래스를 통합하며 둘 이상을 상속할 수 없습니다. 관련 전문 용어
子类、父类、基类、超类、派生类하위 클래스, 파생 클래스 ——> 기본 클래스에서 상속되는 클래스 상위 클래스, 기본 클래스 및 슈퍼 클래스는 상속되는 클래스를 참조합니다.
extends
예
<?php class Father { public $a = 'public'; protected $b = 'protected'; private $c = 'private'; public function func1() { echo 'This is public function','<br/>'; } protected function func2() { echo 'This is protected function','<br/>'; } private function func3() { echo 'This is private function','<br/>'; } } // 继承父类 class Child extends Father { // 子类中调用继承来的方法 public function test() { $this -> func1(); $this -> func2(); //$this -> func3(); 私有方法不可以调用 } } // 实例化子类 $son = new Child(); // 尝试调用属性 echo $son -> a,'<br/>'; //echo $son->b; 不能直接输出b //echo $son -> c; 继承都没继承,当然不能输出 // 尝试调用方法 //$son -> func1(); //$son -> func2(); 不能在类外调用func2 //$son -> func3(); 继承都没继承,当然不能调用 // 间接调用继承自父类的普通方法 $son -> test();Rewrite
정의:
를 정의하고,동일한 수의 매개변수
를 정의합니다. ;
3) 상위 클래스의 메서드를 호출할지 여부는 하위 클래스에 따라 다릅니다. 4) 메서드 적용 범위를 구현할 때 액세스 수정자는 다를 수 있지만(,
) 하위 클래스의 액세스 범위
는 상위 클래스의 액세스 범위보다 크거나 같아야 합니다.
용도: parent:: 访问父类中被重写的属性和方法
Example<?php
class Father
{
public function shuo($num)
{
echo 'a a o o';
}
}
class Son extends Father
{
public function shuo($num)
{
// 调用父类中被重写的方法
// parent::shuo($num);
echo 'Hello World';
}
public function test($num)
{
parent::shuo($num);
}
}
// 实例化子类
$son1 = new Son();
$son1 -> shuo(1); // Hello World
$son1 -> test(1); // a a o o
final 키워드
Examplephp 객체 지향 오버로딩관련 권장 사항:
<?php class Father { final public function test() { echo 'hello'; } } class Son extends Father { public function test() { echo '你好'; } } // 实例化子类 $son1 = new Son(); $son1 -> test(); // 报错,函数不能被重写
php 객체 지향 캡슐화
위 내용은 PHP 객체지향 상속의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!