|
Cada definición de case empieza con la palabra "class", seguida por un nombre de clase, el cual puede ser cualquier nombre que no esté en la lista de palabras reserved en PHP. Seguida por un par de llaves curvas, las cuales contienen la definición de los miembros de la case y los métodos. Una seudo variable $this está disponible cuando un método es llamado dentro del contexto de un objeto. $this es una referencia al objeto que se está usando (usualmente el objeto al que el método pertenece, pero puede ser otro objeto, si un método es llamado estáticamente desde el contexto de un objeto secundario). Est es ilustrado en el siguiente ejemplo:
<?php |
El resultado del ejemplo seria:
$this is defined (a) $this is not defined. $this is defined (b) $this is not defined. |
Para crear una instancia de un objeto, un nuevo objeto debe ser creado y asignado a una variable. Un objeto siempre será asignado cuando se crea un objeto nuevo a menos que el objeto tenga un constructor definido que arroje una excepción en caso de error.
Cuando se asigna una instancia de un objeto previamente creado a una nueva variable, la nueva variable accesará la misma instancia que la del objeto a la que fue asignada. Este comportamiento es el mismo cuando se pasan instancias a una función. Una nueva instancia de un objeto previamente creado puede ser hecho clonandolo.
Una clase puede heredar métodos y miembros de otra clase usando la palabra 'extends' en la declaración. No es posible extender de múltiples clases, una clase puede heredar solo de una clase base.
Los métodos de herencia y sus miembros pueden ser evitados, redeclarandolos con el mismo nombre con el que los definió la clase padre, a menos que la clase padre haya definido un método como final. Es posible accesar a los métodos o miembros redeclarados haciendo referencia a ellos con parent::
Ejemplo 19-4. Herencia de SimpleClass
El resultado del ejemplo seria:
|
Hosting by: hurra.com
Generated: 2007-01-26 18:00:52