Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Iniciación PHP 5. Programación Orientada a Objetos

on

  • 6,759 views

 

Statistics

Views

Total Views
6,759
Views on SlideShare
6,759
Embed Views
0

Actions

Likes
4
Downloads
296
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Iniciación PHP 5. Programación Orientada a Objetos Iniciación PHP 5. Programación Orientada a Objetos Presentation Transcript

  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 3.0. POO en un suspiro Tema 3. PHP 5 y POO Clases. Unidades lógicas que agrupan código y datos. Un clase es un “molde” con funciones (métodos) y variables (propiedades). Un objeto es lo que se obtiene al “desmoldar” la clase.
  • Curso de Introducción a PHP 5 3.1. Clases y Objetos Tema 3. PHP 5 y POO ¿Cómo creamos una nueva clases? class miClase { // El código de la clase iría aquí } ¿Cómo instanciamos una clase? $miClaseInstanciada = new miClase(); $copia = $myClaseInstancia ; Apuntan al mismo objeto (diferencia con PHP 4)
  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 3.2. Métodos y propiedades Tema 3. PHP 5 y POO ¿Cómo declaramos un método en una clase? class miClase { function miMetodo (){ echo 'Ejecutado miMetodo' ; } } ¿Cómo ejecutamos un método en una clase? $this ->miMetodo(); $obj = new miClase(); $obj ->miMetodo(); Fuera Dentro
  • Curso de Introducción a PHP 5 3.2. Métodos y propiedades Tema 3. PHP 5 y POO Constructores class foo { function __construct() { // Inicializar el objeto } } Destructores PHP 5 class foo { function foo() { // Inicializar el objeto } } PHP 4 class foo { function __destruct() { // Tareas de limpieza } } Cuidado No se puede controlar cuando se ejecuta
  • Curso de Introducción a PHP 5 3.2. Métodos y propiedades Tema 3. PHP 5 y POO Visibilidad class foo { [final] visibility function bar(){} } public. Se puede acceder desde cualquier ámbito (en caso de omisión) protected. Sólo puede ser accedido por la propia clase y sus descendientes private. Sólo puede ser accedido por la propia clase final. No puede ser sobreescrito por sus descendientes
  • Curso de Introducción a PHP 5 3.2. Métodos y propiedades Tema 3. PHP 5 y POO Declarando una propiedad class foo { public $bar = “bar”; private $baz = “baz”; } Llamando a una propiedad $this ->bar; $this ->baz; $obj = new foo(); $obj ->bar; Fuera Dentro
  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 3.3. Herencia Tema 3. PHP 5 y POO La herencia es una de las claves de la POO Permite extender unas clases de otras. Lo cual implica - Utilizar métodos y propiedades de las clases padre - Añadir nuevos métodos - Añadir nuevas propiedades - Sobreescribir métodos y propiedades de las clases padre La herencia junto con las interfaces permiten el polimorfismo de las clases
  • Curso de Introducción a PHP 5 3.3. Herencia Tema 3. PHP 5 y POO Haciendo que una clase herede de otra class foo extends bar{ // Código } Sobreescribiendo un método de la clase padre class bar{ protected $a = “”; public function __construct( $a ) { $this ->a = $a ; } } class foo extends bar{ public function __construct( $a ) { $this ->a = $a*2 ; } }
  • Curso de Introducción a PHP 5 3.3. Herencia Tema 3. PHP 5 y POO Reutilizando un método de la clase padre class foo extends bar{ public function reset() { r eturn $this-> __construct(); } } Sobreescribiendo y reutilizando un método de la clase padre class foo extends bar{ protected $b = “”; public function __construct() { $this ->b = 10 ; r eturn parent::__construct(); } }
  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 3.4. Constantes, métodos y propiedades estáticas Tema 3. PHP 5 y POO Declarando una propiedad estática class foo { static public $bar = “bar”; } Declarando un método estático class foo { static public function barMethod (){ //Hacer algo } }
  • Curso de Introducción a PHP 5 3.4. Constantes, métodos y propiedades estáticas Tema 3. PHP 5 y POO Accediendo a una propiedad estática Ejecutando un método estático Fuera Dentro $value = self :: $bar ; $value = foo :: $bar ; Fuera Dentro $value = self :: barMethod() ; $value = foo :: barMethod() ;
  • Curso de Introducción a PHP 5 3.4. Constantes, métodos y propiedades estáticas Tema 3. PHP 5 y POO Definiendo una constante en una clase Llamando a una constante Fuera Dentro $value = self :: BAZ ; $value = foo :: BAZ ; class foo{ CONST BAZ = “baz”; } Una constante no puede cambiar su valor mientras que un método estático sí
  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 3.5. Interfaces y clases abstractas Tema 3. PHP 5 y POO Definiendo una interfaz Implementando una interfaz en una clase interface miInterfaz{ public function metodoFoo(); } MiClase implements miInterfaz{ public function metodoFoo(){ // Implementación del método } }
  • Curso de Introducción a PHP 5 3.5. Interfaces y clases abstractas Tema 3. PHP 5 y POO Definiendo una clase abstracta class MiClaseAbstracta { public function metodoFoo(){ // Implementación del método } abstract public function metodoBar(); } Las clases abstractas no se pueden instanciar Deben tener al menos un método abstracto
  • Curso de Introducción a PHP 5 Tema 3: PHP 5 y POO* *POO = Programación Orientada a Objetos 1. Clases y Objetos 2. Métodos y propiedades 3. Herencia 4. Constantes, métodos y variables estáticas 5. Interfaces y clases abstractas 6. Excepciones
  • Curso de Introducción a PHP 5 3.6. Excepciones Tema 3. PHP 5 y POO Objeto especial que hereda de la clase Exception Su misión es recopilar e informar errores El constructor acepta dos parámetros, mensaje de error y código de error . ¿Cómo se lanza un error? throw new Exception(“Se ha lanzado una excepción”); ¿Cómo se recoge una excepción? try{ // código que puede lanzar una excepción }catch( $e Exception){ // gestionamos las posible excepción die ( $e ->getMessage()); }
  • Curso de Introducción a PHP 5 3.6. Excepciones Tema 3. PHP 5 y POO Extender la clase excepción: 1. Añadir nuevas funcionalidades 2. Mejorar el manejo de errores Algunos métodos públicos de Exception
    • getMessage() Devuelve el mensaje que se le pasó al constructor
    • getCode() Devuelve el código que se le pasó al constructor
    • getFile() Devuelve el archivo donde se lanzó la excepción
    • getLine() Devuelve la línea donde se lanzó la excepción