3 1 workshop poo clases partei

23
Curso: "Programación Orientada a Objetos PHP5" 2013 “Programación Orientada a Objetos: Clases y Objetos” Módulo 3 / parte 1 © Todos los logos y marcas utilizados en este documento, están registrados y pertenecen a sus respectivos dueños. AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 1

Upload: xxx-xxxx

Post on 01-Jan-2016

10 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

“Programación Orientada a Objetos: Clases y Objetos”

Módulo 3 / parte 1

© Todos los logos y marcas utilizados en este documento, están registrados y pertenecen a sus respectivos dueños.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 1

Page 2: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 Objetivo El objetivo de esta práctica de laboratorio es entregar los conceptos de clases en programación orientada a objeto, mediante diversos ejemplos crearemos y usaremos nuestras propias Clases PHP.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 2

Page 3: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 Ejercicio 1: Creando nuestra primera Clase PHP Estudiante

1. Abrir Netbeans IDE 2. Crear un proyecto Netbeans: PHP Application

• Seleccionar File desde el menú superior y seleccionar New Project. • Observar que aparece la ventana de dialogo New Project. • Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la sección Projects. • Clic Next.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 3

Page 4: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

• Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese ProyectoEjemploEstudiante. Este es el nombre que se le dará al proyecto.

• Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del Web Root (carpeta htdocs de apache) de nuestro servidor web apache, si estamos usando Xampp debería estar dentro de C:\xampp\htdocs\ProyectoEjemploEstudiante. En el ejemplo usaremos el servidor de Zend por lo tanto nuestro Source Folder debe ser C:\Zend\Apache2\htdocs\ProyectoEjemploEstudiante

• Clic Finish.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 4

Page 5: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

• Observe que el proyecto ProyectoEjemploEstudiante ha sido creado bajo la pestaña Projects de NetBeans IDE y además ha generado automáticamente el archivo index.php el cual es desplegado en el editor de código del IDE.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 5

Page 6: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

3. Creando la clase PHP Estudiante: • Clic derecho en el proyecto ProyectoEjemploEstudiante y seleccionamos New->PHP

Class.

• Observe que aparece la ventana para crear una clase PHP: New PHP Class • Para el nombre de la case (Class Name), ingrese Estudiante • Clic Finish.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 6

Page 7: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

• Observe que se crea la clase Estudiante.php y es desplegada en el editor de código del IDE.

• Modifique la clase Estudiante.php como se muestra en el Código de abajo, poner especial atención en los comentarios resaltados con negrita.

<?php /** * Description of Estudiante * * @author Andrés Guzmán F */ class Estudiante { // Declaramos las variables de instancia. private $_nombre; private $_apellido; private $_notaMatematica; private $_notaLenguaje; private $_notaCiencia; // Declaramos las variables estáticas o de la clase. private static $_contadorAlumnos = 0; /** * Calcula el promedio de las asignaturas, matemáticas, lenguaje y ciencias */

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 7

Page 8: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 public function getPromedio() { $resultado = 0; $resultado = ($this->getNotaMatematica() + $this->getNotaLenguaje() + $this->getNotaCiencia() ) / 3; return $resultado; } /** * Retorna el número de las instancias/objetos de la clase Estudiante */ public static function getContadorAlumnos() { return self::$_contadorAlumnos; } /** * Incrementa el número de las instancias/objetos de la clase Estudiante. * Este es un método estático. */ public static function incrementaContadorAlumnos() { self::$_contadorAlumnos++; } public function getApellido() { return $this->_apellido; } public function setApellido($apellido) { $this->_apellido = $apellido; } public function getNombre() { return $this->_nombre; } public function setNombre($nombre) { $this->_nombre = $nombre; } public function getNotaLenguaje() { return $this->_notaLenguaje; } public function setNotaLenguaje($notaLenguaje) { $this->_notaLenguaje = $notaLenguaje; } public function getNotaMatematica() { return $this->_notaMatematica; } public function setNotaMatematica($notaMatematica) { $this->_notaMatematica = $notaMatematica; } public function getNotaCiencia() { return $this->_notaCiencia; } public function setNotaCiencia($notaCiencia) {

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 8

Page 9: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 $this->_notaCiencia = $notaCiencia; } }

4. Modificar el contenido generado por el IDE en el index.php. • Modifique index.php como se muestra en el Código de abajo, poner especial atención

en los comentarios resaltados con negrita (es decir elimine todo lo que se generó en index.php por el código de abajo).

<?php require_once 'Estudiante.php'; /** * @author Andrés Guzmán */ class EjemploEstudiante { public static function run() { // Creamos un objeto instancia de la clase Estudiante. $andres = new Estudiante(); // Incrementamos el contador de alumnos llamando al método estático. Estudiante::incrementaContadorAlumnos(); // Creamos otro objeto instancia de la clase Estudiante. $james = new Estudiante(); // Incrementamos el contador de alumnos llamando al método estático. Estudiante::incrementaContadorAlumnos(); // Creamos un tercer objeto instancia de la clase Estudiante. $john = new Estudiante(); // Incrementamos el contador de alumnos llamando al método estático. Estudiante::incrementaContadorAlumnos(); // Asignamos los nombres y apellidos de los estudiantes. $andres->setNombre("Andres"); $andres->setApellido("Guzman"); $james->setNombre("James"); $james->setApellido("Gosling"); $john->setNombre("John"); $john->setApellido("Doe"); // Imprimimos el nombre y apellido de Andrés. echo "Nombres = " . $andres->getNombre() . " " . $andres->getApellido() . "<br />"; // Imprimimos el nombre y apellido de James. echo "Nombres = " . $james->getNombre() . " " . $james->getApellido() . "<br />"; // Imprimimos el nombre y apellido de John. echo "Nombres = " . $john->getNombre() . " " . $john->getApellido() . "<br />"; // Imprimimos el número de estudiantes. echo "Total de Estudiantes = " . Estudiante::getContadorAlumnos(). "<br />"; } } // Ejecutamos el Ejemplo EjemploEstudiante::run();

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 9

Page 10: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

5. Construir y ejecutar el programa

• Clic derecho del mouse sobre el proyecto ProyectoEjemploEstudiante y seleccionar Run • Observe el resultado en el Navegador. (Figura de abajo):

6. Nuevamente modificamos el contenido del archivo index.php. • Modifique el index.php como se muestra en el Código de abajo, poner especial atención

en los códigos agregados que se resaltados con negrita y color azul.

<?php require_once 'Estudiante.php'; /** * * @author Andrés Guzmán */ class EjemploEstudiante { public static function run() { // Creamos un objeto instancia de la clase Estudiante. $andres = new Estudiante(); // Incrementamos el contador de alumnos llamando al método estático. Estudiante::incrementaContadorAlumnos(); // Creamos otro objeto instancia de la clase Estudiante. $james = new Estudiante(); // Incrementamos el contador de alumnos llamando al método estático. Estudiante::incrementaContadorAlumnos(); // Creamos un tercer objeto instancia de la clase Estudiante. $john = new Estudiante(); // Incrementamos el contador de alumnos llamando al método estático. Estudiante::incrementaContadorAlumnos(); // Asignamos los nombres y apellidos de los estudiantes. $andres->setNombre("Andres"); $andres->setApellido("Guzman"); $james->setNombre("James"); $james->setApellido("Gosling"); $john->setNombre("John"); $john->setApellido("Doe"); // Imprimimos el nombre y apellido de Andrés.

Nombres = Andres Guzman Nombres = James Gosling Nombres = John Doe Total de Estudiantes = 3

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 10

Page 11: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 echo "Nombres = " . $andres->getNombre() . " " . $andres->getApellido() . "<br />"; // Imprimimos el nombre y apellido de James. echo "Nombres = " . $james->getNombre() . " " . $james->getApellido() . "<br />"; // Imprimimos el nombre y apellido de John. echo "Nombres = " . $john->getNombre() . " " . $john->getApellido() . "<br />"; // Imprimimos el número de estudiantes. echo "Total de Estudiantes = " . Estudiante::getContadorAlumnos() . "<br />"; // Asignamos las notas del alumno John Doe. $john->setNotaCiencia(5.9); $john->setNotaLenguaje(6.3); $john->setNotaMatematica(6.8); // Imprimimos el promedio de notas de John Doe. echo "Promedio de John Doe = " . $john->getPromedio(); } } // Ejecutamos el Ejemplo EjemploEstudiante::run();

7. Construir y ejecutar el programa • Clic derecho del mouse sobre el proyecto ProyectoEjemploEstudiante y seleccionar Run • Observe el resultado en el Navegador. (Figura de abajo)

Nombres = Andres Guzman Nombres = James Gosling Nombres = John Doe Total de Estudiantes = 3 Promedio de John Doe = 6.3333333333333

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 11

Page 12: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 Ejercicio 2: Generar y ejecutar una aplicación que utiliza variables estáticas - static (class) y variables de instancia.

1. Crear un proyecto Netbeans: PHP Application • Seleccionar File desde el menú superior y seleccionar New Project. • Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo Projects. • Clic Next • Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese

ProyectoEjemploVariableEstatica. Este es el nombre que se le dará al proyecto. • Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del

Web Root (carpeta htdocs de apache) de nuestro servidor web apache. Si usamos XAMPP: C:\xampp\htdocs\ProyectoEjemploVariableEstatica, si usamos Zend Server C:\Zend\Apache2\htdocs\ProyectoEjemploVariableEstatica

• Clic Finish.

2. Creando la clase PHP Variables: • Clic derecho en el proyecto ProyectoEjemploVariableEstatica y seleccionamos New-

>PHP Class. • Observe que aparece la ventana para crear una clase PHP: New PHP Class • Para el nombre de la case (Class Name), ingrese Variables • Clic Finish.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 12

Page 13: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

• Observe que se crea la clase Variables.php y es desplegada en el editor de código del IDE.

• Modifique la clase Variables.php como se muestra en el Código de abajo, poner especial atención en los comentarios resaltados con negrita.

<?php /** * Description of Variables * * @author Andrés Guzmán F */ class Variables { // Variables estáticas de la clase public static $staticIntA = 10; public static $staticStringB = "Soy un String estático de la clase"; // Variables de la instancia public $instanciaIntA = 20; public $instanciaStringB = "Soy un String de la instancia"; }

3. Modificar el contenido generado por el IDE en el index.php. • Modifique index.php como se muestra en el Código de abajo, poner especial atención

en los comentarios resaltados con negrita.

<?php require_once 'Variables.php'; /** * * @author Andrés Guzmán */ class EjemploVariableEstatica { public static function run() { $saltoLinea = "<br />"; // Accediendo a las variables estáticas de la clase Variables. // Notamos que NO tenemos que crear la instanciau objeto de la clase Variables, // accedemos directamente. echo 'Variables::$staticIntA = ' . Variables::$staticIntA; echo $saltoLinea; echo 'Variables::$staticStringB = ' . Variables::$staticStringB; echo $saltoLinea; Variables::$staticStringB = "PHP 5 POO Avanzado con Zend Framework MVC!"; echo 'Variables::$staticStringB = ' . Variables::$staticStringB; echo $saltoLinea;

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 13

Page 14: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 // Accediendo a las variables de instancia de la clase Variables. // Tenemos que crear la instanciau objeto de la clase Variables // para acceder a las variables de la instancia de la clase Variables. $objInstancia1 = new Variables(); $objInstancia2 = new Variables(); $objInstancia1->instanciaIntA = 1; echo '$objInstancia1->instanciaIntA = ' . $objInstancia1->instanciaIntA; echo $saltoLinea; $objInstancia2->instanciaIntA = 3; echo '$objInstancia2->instanciaIntA = ' . $objInstancia2->instanciaIntA; echo $saltoLinea; // Las variables estáticas también pueden ser accedidas desde el objeto instancia. echo '$objInstancia1::$staticIntA = ' . $objInstancia1::$staticIntA; echo $saltoLinea; $objInstancia1::$staticIntA = 220; echo '$objInstancia1::$staticIntA = ' . $objInstancia1::$staticIntA; echo $saltoLinea; echo 'Variables::$staticIntA = ' . Variables::$staticIntA; echo $saltoLinea; // Las variables estáticas pueden ser accedidas por múltiples objetos instancias y // comparten el mismo valor (ya que son estáticas o de la clase) $objInstancia2::$staticIntA = 550; echo '$objInstancia1::$staticIntA = ' . $objInstancia1::$staticIntA; echo $saltoLinea; echo '$objInstancia2::$staticIntA = ' . $objInstancia2::$staticIntA; echo $saltoLinea; echo 'Variables::$staticIntA = ' . Variables::$staticIntA; } } // Arrancamos el ejemplo EjemploVariableEstatica::run();

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 14

Page 15: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

4. Construir y ejecutar el programa • Clic derecho del mouse sobre el proyecto ProyectoEjemploVariableEstatica y seleccionar

Run • Observe el resultado en el Navegador. (Figura de abajo)

run: Variables::$staticIntA = 10 Variables::$staticStringB = Soy un String estatico de la clase Variables::$staticStringB = PHP 5 POO Avanzado con Zend Framework MVC! $objInstancia1->instanciaIntA = 1 $objInstancia2->instanciaIntA = 3 $objInstancia1::$staticIntA = 10 $objInstancia1::$staticIntA = 220 Variables::$staticIntA = 220 $objInstancia1::$staticIntA = 550 $objInstancia2::$staticIntA = 550 Variables::$staticIntA = 550

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 15

Page 16: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 Ejercicio 3: Generar y ejecutar una aplicación que utiliza variable estática para emular un identificador auto-incremental de usuarios.

1. Crear un proyecto Netbeans: PHP Application • Seleccionar File desde el menú superior y seleccionar New Project. • Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo Projects. • Clic Next • Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese

ProyectoIdIncrementalUsuario. Este es el nombre que se le dará al proyecto. • Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del

Web Root (carpeta htdocs de apache) de nuestro servidor web apache. • Clic Finish.

2. Creando la clase PHP Usuario:

• Clic derecho en el proyecto ProyectoIdIncrementalUsuario y seleccionamos New->PHP Class.

• Observe que aparece la ventana para crear una clase PHP: New PHP Class • Para el nombre de la case (Class Name), ingrese Usuario • Clic Finish. • Observe que se crea la clase Usuario.php y es desplegada en el editor de código del IDE.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 16

Page 17: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

3. Modifique la clase Usuario.php como se muestra en el Código de abajo, poner especial atención en los comentarios resaltados con negrita.

<?php /** * @author Andrés Guzmán F */ class Usuario { // Declaramos las variables de instancia. private $_id; private $_nombre; private $_apellido; // Declaramos las variables estáticas o de la clase. private static $_ultimoId = 0; function __construct($nombre, $apellido) { $this->_nombre = $nombre; $this->_apellido = $apellido; // Incrementamos la variable estática ultimoId y la asignamos a // la variable de instancia id $this->_id = ++self::$_ultimoId; } /** * El metodo toString(), es un metodo que heredan todos los objetos en PHP, * El metodo toString() permite imprimir el objeto a la medida, al imprimir un objeto * automáticamente el runtime de PHP ejecutará el metodo toString() para imprimirlo en la salida */ public function __toString() { return "ID: {$this->_id} - {$this->_nombre} {$this->_apellido} <br />"; } }

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 17

Page 18: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

4. Modificar el contenido generado por el IDE en el index.php. • Modifique index.php como se muestra en el Código de abajo, poner especial atención

en los comentarios resaltados con negrita.

<?php require_once 'Usuario.php'; /** * * @author Andrés Guzmán */ class IdIncrementalUsuario { public static function run() { // Creamos 6 objetos instancias de la clase Usuario. $usuario1 = new Usuario("Andres", "Guzman");//Profesor del Curso PHP POO $usuario2 = new Usuario("Rasmus", "Lerdorf"); //Creador de PHP $usuario3 = new Usuario("Matthew", "Weier O'Phinney"); //Cabeza y Arquitecto de Zend Framework $usuario4 = new Usuario("Albert", "Einstein"); $usuario5 = new Usuario("Bruce", "Lee"); $usuario6 = new Usuario("Linus", "Torvalds"); //Creador de Linux // Imprimimo los 6 objetos instancias de Usuario. // Automáticamente se ejecutará el método toString e imprimira los objetos. // con la forma id + "-" + nombre + " " + apellido echo($usuario1); echo($usuario2); echo($usuario3); echo($usuario4); echo($usuario5); echo($usuario6); } } // Ejecutamos el programa PHP IdIncrementalUsuario::run();

5. Construir y ejecutar el programa • Clic derecho del mouse sobre el proyecto ProyectoIdIncrementalUsuario y seleccionar Run • Observe el resultado en el Navegador. (Figura de abajo)

ID: 1 - Andres Guzman ID: 2 - Rasmus Lerdorf ID: 3 - Matthew Weier O'Phinney ID: 4 - Albert Einstein ID: 5 - Bruce Lee ID: 6 - Linus Torvalds

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 18

Page 19: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 Ejercicio 4: Generar y ejecutar una aplicación que utiliza métodos estáticos y de la instancia (no estáticos).

1. Crear un proyecto Netbeans: PHP Application • Seleccionar File desde el menú superior y seleccionar New Project. • Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo Projects. • Clic Next • Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese

ProyectoEjemploMetodoEstatico. Este es el nombre que se le dará al proyecto. • Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del

Web Root (carpeta htdocs de apache) de nuestro servidor web apache. • Clic Finish.

2. Creando la clase PHP Metodos:

• Clic derecho en el proyecto ProyectoEjemploMetodoEstatico y seleccionamos New->PHP Class.

• Observe que aparece la ventana para crear una clase PHP: New PHP Class • Para el nombre de la case (Class Name), ingrese Metodos • Clic Finish. • Observe que se crea la clase Metodos.php y es desplegada en el editor de código del

IDE.

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 19

Page 20: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

3. Modifique la clase Metodos.php como se muestra en el Código de abajo, poner especial atención en los comentarios resaltados con negrita.

<?php /** * * @author Andrés Guzmán F */ class Metodos { // variable estática public static $a = 1; // método estático public static function metodoEstatico($i) { echo "Ingresando al metodoEstatico(" . $i . ") <br />"; } // Método de la instancia o NO estático public function metodoNoEstatico($i) { echo "Ingresando al metodoNoEstatico(" . $i . ") <br />"; } }

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 20

Page 21: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

4. Modificar el contenido generado por el IDE en el index.php. • Modifique index.php como se muestra en el Código de abajo, poner especial atención

en los comentarios resaltados con negrita.

<?php require_once 'Metodos.php'; /** * * @author Andrés Guzmán */ class EjemploMetodoEstatico { public static function run() { $saltoLinea = "<br />"; // Accediendo a la variable estática de la clase Metodos. // Notamos que no hay que crear la instancia del la clase Metodos con el // operador new, accedemos directamente. echo 'Metodos::$a = ' . Metodos::$a; echo $saltoLinea; // Invocamos un metodo estático de la clase Variables. // Notamos que no hay que crear la instancia del la clase Metodos con el // operador new, accedemos directamente. Metodos::metodoEstatico(5); // La variable estática también puede ser accedida desde un objeto instancia. $d = new Metodos(); echo '$d::$a = ' . $d::$a; echo $saltoLinea; // El método estático también puede ser invocado desde un objeto instancia. $d::metodoEstatico(0); // La misma variable estática también puede ser accedida desde múltiple instancias. $e = new Metodos(); echo '$e::$a = ' . $e::$a; echo $saltoLinea; $d::$a += 3; echo 'Metodos::$a = ' . Metodos::$a; echo $saltoLinea; echo '$d::$a = ' . $d::$a; echo $saltoLinea; echo '$e::$a = ' . $e::$a; echo $saltoLinea; } } // Ejecutamos el programa PHP EjemploMetodoEstatico::run();

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 21

Page 22: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013

5. Construir y ejecutar el programa • Clic derecho del mouse sobre el proyecto ProyectoEjemploMetodoEstatico y seleccionar

Run • Observe el resultado en el Navegador. (Figura de abajo)

Metodos::$a = 1 Ingresando al metodoEstatico(5) $d::$a = 1 Ingresando al metodoEstatico(0) $e::$a = 1 Metodos::$a = 4 $d::$a = 4 $e::$a = 4

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 22

Page 23: 3 1 Workshop Poo Clases ParteI

Curso: "Programación Orientada a Objetos PHP5" 2013 Resumen

En esta práctica de laboratorio repasamos los conceptos de clases en programación orientada a objeto, mediante diversos ejemplos creamos nuestras propias Clases PHP, también vimos la diferencia entre las variables y métodos estáticos y de la instancia.

Envía tus consultas a los foros! Aquí es cuando debes sacarte todas las dudas haciendo consultas en los foros correspondientes

AUTORES: [email protected] WEB: http://formacion-bdi.bolsadeideas.cl | | Clases y Objetos I 23