PHP 객체 지향 프로그래밍에서의 보호된 속성
PHP는 또한 보호된(protected) 속성을 지원합니다.
이것들 또한 protected 지시자를 사용하여 선언됩니다.
이러한 속성은 상속되며 하위 클래스에서 접근 가능합니다.
나이를 포함하는 보호된 속성을 가진 부모 클래스를 만들어 봅시다:
<?php
class User {
protected $age;
public function setAge($age) {
$this->age = $age;
}
public function getAge() {
return $this->age;
}
}
?>
자식 클래스에서 나이를 1씩 증가시키는 메서드를 만들어 봅시다:
<?php
class Student extends User {
public function incAge() {
$this->age++;
}
}
?>
다음 코드를 보호된 속성을 사용하여 다시 작성하세요:
<?php
class User {
private $name;
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->name;
}
}
class Employee extends User {
public function setName($name) {
if (strlen($name) > 0) {
$this->name = $name;
}
}
}
?>