> 백엔드 개발 > PHP 튜토리얼 > PHP의 객체지향 상속에 대한 간략한 토론

PHP의 객체지향 상속에 대한 간략한 토론

青灯夜游
풀어 주다: 2023-04-08 14:28:01
앞으로
3027명이 탐색했습니다.

이 글에서는 PHP 객체지향 상속에 대해 소개하겠습니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

PHP의 객체지향 상속에 대한 간략한 토론

1. 소개

1. 상속은 기본 클래스에서 하나 이상의 클래스를 얻는 메커니즘으로, 클래스 재사용을 실현할 수 있습니다.

2. 하위 클래스는 상위 클래스의 속성과 메서드를 상속합니다. class , 부모 클래스를 동시에 확장할 수 있습니다

2. 클래스 상속 방법

1. PHP는 단일 상속입니다. 클래스는 하나의 부모 클래스만 상속할 수 있지만 부모 클래스는 여러 상속이 가능합니다. 하위 클래스.

2. 하위 클래스는 상위 클래스의 전용 속성과 전용 메서드를 상속할 수 없습니다.

3. 클래스 메서드는 상속될 수 있으며 클래스 생성자도 상속될 수 있습니다.

4. 상속된 메서드: 확장 키워드 사용

//定义一个基类
class Book{
	public $name;
	public $price;
	private $page;
	public function __construct($name){
		$this->name = $name;
	}
	public function getName(){
		return $this->name;
	}
}

//定义一个子类,并继承基类
class NoteBook extends Book{

}

//实例化子类,并继承基类构造方法
$notebook = new NoteBook('book');

//子类继承的属性
echo $notebook->name;//结果为book

//子类继承的属性
echo $notebook->getName();//结果为book

//子类不能访问基类的私有属性
echo $notebook->page; //错误
로그인 후 복사

3 . 클래스 상속 방법

1. 클래스의 속성과 메서드 앞에 수정자를 추가하여 클래스에 대한 일부 액세스를 제어할 수 있습니다.

2. Private: 외부에서 직접 호출할 수 없으며 사용만 가능합니다. 현재 클래스의 내부 호출

3. protected: 수정된 속성과 메서드는 현재 클래스 또는 하위 클래스 내에서만 호출할 수 있으며 외부 세계에서는 호출할 수 없습니다

4. Public: 수정된 속성과 메서드는 다음과 같습니다. 제한 없이 호출됨

4. Rewriting

1. 상위 클래스에서 상속된 메서드가 하위 클래스의 요구 사항을 충족할 수 없는 경우 이 프로세스를 메서드 다시 작성이라고 합니다.

2. 하위 클래스에서 재정의된 메서드는 상위 클래스에서 재정의된 메서드보다 더 제한적인 액세스 권한을 사용할 수 없습니다.

3. 상위 클래스의 생성 방법도 다시 작성할 수 있습니다.

//定义一个子类,并继承基类
class NoteBook extends Book{
//覆写基类的方法
public function getName(){
return 'The book name is'.$this->name;
}
}
로그인 후 복사

5. parent:: 키워드

1. parent::를 사용하면 상위 클래스의 메서드를 참조할 수 있으며, 상위 클래스에 정의된 멤버 메서드를 호출하는 데에도 사용할 수 있습니다.

public function getName(){
//调用父类的方法
return 'The book name is '.parent::getName();
}
로그인 후 복사

추천 학습: PHP 비디오 튜토리얼

위 내용은 PHP의 객체지향 상속에 대한 간략한 토론의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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