Visibilidad:
La visibilidad es un tipo de acceso que se da a las propiedades y/o metodos de una Clase.
Esta puede definirse anteponiendose con una palabra reservada, hay 3 tipos de visibilidad:
- Public:
Significa que puede ser accesado sin restricción.
- Protected:
Solo puede ser accesado por una clase heredada y la clase que lo define.
- Private:
Solo puede ser accesado por la clase que lo define.
1. Visibilidad en las Propiedades:
Las propiedades de la clase tiene que tener declarada una visibilidad, la palabra reservada var que se usaba en PHP 4 ya no es valida para esta versión.
Ejemplo:
class Persona { public $nombre = 'Cesar'; protected $telefono = '333-1111'; private $email = 'Email'; } $cesar = new Persona(); echo $cesar->nombre; //Cesar echo $cesar->telefono; //Fatal error echo $cesar->email; //Fatal error
Clase que hereda:
class Alumno extends Persona { public function __construct() { echo $this->nombre; //Cesar echo $this->telefono; // 333-1111 echo $this->email; //Undefined } }
2. Visibilidad en los Metodos:
En mi post anterior escribí sobre Constructores y Destructores, estos son los llamados Metodos Mágicos en PHP 5, estos son de tipo public. Cuando un metodo no tiene un tipo de acceso (public, protected, private), son tomados como public
class Persona { public function __construct() { } public function getNombre() { } protected function getTelefono() { } private function getEmail() { } // es public function getDatos() { $this->getNombre(); $this->getTelefono(); $this->getEmail(); } } $cesar = new Persona(); $cesar->getNombre(); // lo ejecuta $cesar->getTelefono(); // Fatal Error $cesar->getEmail(); // Fatal Error $cesar->getDatos(); // ejecuta los 3 metodos
Algún comentario, sugerencia o critica constructiva, bienvenida sea.
Recursos:
[…] About Visibilidad en PHP […]
Comments are closed.