⊗ppOpIhPrM 31 of 107 menu

PHP OOP에서 상속 시의 private 메서드

Private 메서드는 상속되지 않습니다. 이는 캡슐화를 위반하지 않도록 의도적으로 설계된 것입니다. 예제를 통해 살펴보겠습니다. 다음과 같이 private 메서드를 가진 부모 클래스가 있다고 가정해 보겠습니다:

<?php class User { private $name; public function setName($name) { $this->name = $name; } public function getName() { return $this->capeFirst($this->name); } private function capeFirst($str) { return ucfirst($str); } } ?>

부모 클래스를 다음 클래스가 상속한다고 가정해 보겠습니다:

<?php class Student extends User { private $surn; public function setSurn($surn) { $this->surn = $surn; } public function getSurn() { return $this->surn; } } ?>

자식 클래스가 부모의 private 메서드를 사용하려고 한다면, PHP는 이를 허용하지 않고 오류를 발생시킵니다:

<?php class Student extends User { private $surn; public function setSurn($surn) { $this->surn = $surn; } public function getSurn() { return $this->capeFirst($this->surn); // 오류 발생 } } ?>

Employee 클래스에서 부모의 private 메서드를 사용해 보세요.

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부