PHP

상속 - 접근제어자 protected

수업소개

변수에 대해서 상속 관계에 있는 메소드에서는 접근할 수 있지만, 인스턴스를 통해서는 직접적으로 접근하는 것을 막고 싶을 때 protected를 사용하면 됩니다. 

수업

코드 

<?php
class ParentClass{
  public $_public = '<h1>public</h1>';
  protected $_protected = '<h1>protected</h1>';
  private $_private = '<h1>private</h1>';
}
class ChildClass extends ParentClass{
  function callPublic(){
    echo $this->_public;
  }
  function callProtected(){
    echo $this->_protected;
  }
  function callPrivate(){
    echo $this->_private;
  }
}
$obj = new ChildClass();
echo $obj->_public;
//echo $obj->_protected;
echo $obj->_private;
$obj->callPublic();
$obj->callProtected();
$obj->callPrivate();
?>

 

댓글

댓글 본문
작성자
비밀번호
  1. 웅이
    echo $obj->_public;
    echo $obj->_private;
    이런것 처럼 class 내의 변수에 접근할때는 $를 빼는게 원칙인가요?
  2. 레이
    감사합니다.!

    user가 로그인해서 보이는 dashboard data도 이 private기능을 사용해서 구현하는게 맞는지 궁금합니다.
    혹자 개발해보려고 하는데 검색키워드를 어떤걸로 구글링 해야하는지 잘 몰라서요..
  3. mirong1
    좋은 강의를 만들기 위해 들어간 노력에 너무 감사드립니다. !!
  4. under
    변수명에 언더바를 사용하는 이유가 있을까요?
  5. dufuqsls
    잘봣습니다@@
  6. Frank
    고맙습니다~
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기