środa, 10 września 2014

Jaka jest różnica pomiędzy public, private, protected i static?

Przy tworzeniu np. klasy możemy zdefiniować, czy zmienne będą publiczne (public), prywatne (private), zabezpieczone (protected) czy statyczne (static).

<?php

class Demo {

     public $title;
     private $description;
     protected $uid;
     static $info;

     // (...)
}

?>

  • Public - deklaracja publiczna, do której dostęp będziemy mieli w klasie, ale także możemy po nią sięgnąć z zewnątrz
  • Private - deklaracja prywatna, dostęp do niej ma tylko klasa w której została zdefiniowana
  • Protected - deklaracja zabezpieczona, ma do niej dostęp tylko klasa w której została zdefiniowana oraz klasy dziedziczące
  • Static - deklaracja statyczna dzięki niej nasza zmienna zostanie zainicjowana tylko przy pierwszym wywołaniu funkcji, przy kolejnych odwołaniach będzie zawierała tą samą wartość co przy poprzednich

Brak komentarzy:

Prześlij komentarz