Está en la página 1de 9

CINAR SISTEMAS

ASIGNATURA: PHP 2

PROFESOR: JOSE GABRIEL HERRERA DELGADO

OBJETOS EN PHP

Si en la vida comn y corriente nos preguntamos qu es un objeto ? que


diramos ?

Nosotros diramos que es un elemento el cual tiene un nombre, unas


caractersticas y que realizan una o varias acciones.

Por ejemplo si nosotros tenemos un carro que podemos decir de l: que


es un objeto el cual tiene cuatro ruedas, que tiene un determinado color,
peso, marca, modelo, etc. (caractersticas) y que puede hacer el carro ?
El puede avanzar, puede retroceder, puede girar a la izquierda, a la
derecha, puede frenar (comportamiento).

Ahora para nuestro lenguaje que es un objeto? Decimos que un objeto


es una estructura de datos la cual est conformada por un conjunto de
variables llamadas propiedades y un conjunto de funciones llamadas
mtodos. Las propiedades describen las caractersticas del objeto y los
mtodos describen las acciones que realiza el objeto.

Ahora como hacemos para crear un objeto.

Lo primero que debemos hacer es crear una clase, qu es una clase,


podemos decir que es un modelo en la cual se define las caractersticas
comunes de un objeto.

Para crear una clase utilizamos el siguiente formato:

class nombre_clase{

Donde Identificador de acceso indica el nivel de acceso que se tiene


sobre la clase (objeto) y los dos ms utilizados son:

class (clase): es una palabra reservada la cual se emplea para crear una
clase.
nombre_clase: es el identificador o nombre para la clase, nombre con el
cual se hace referencia a los diferentes objetos de la clase.

Ejemplo: Supongamos que vamos a crear una clase llamada carro

La definicin de la clase quedara de la siguiente manera

En este caso hemos creado la clase Carro.

Una vez que se ha creado la clase se hace necesario definir las


diferentes propiedades de la clase; que es muy similar a definir variables
en php, el formato general de definicin de las propiedades es el
siguiente:

Identificador_accesso $Propiedad1;

Identificador_accesso $Propiedad2;

---------------------

Identificador_accesso $Propiedadn;

dnde:

Donde Identificador de acceso indica el nivel de acceso que se tiene


sobre la propiedad: public o private.

public (pblico): significa que el acceso es pblico, es decir que se


pueden acceder a las propiedades desde cualquier parte. Para este caso
tambin es posible utilizar la palabra reservada var.

private (privado): significa que el acceso es privado, es decir que no se


puede acceder a una determinada propiedad desde fuera de la clase.

$Propiedad1, $Propiedad2,.,$Propiedadn: son cada una de las


propiedades o caractersticas del objeto.
Ejemplo: Supongamos que para nuestro objeto, (Carro definimos las
siguientes propiedades: Placa, Propietario, Color, Modelo y Cilindraje;
ellas quedaran definidas de la siguiente manera:

Aqu nos dira que todas las propiedades son pblicas (var), es decir que
a ellas se puede acceder desde la clase en la cualquier parte, ya sea
dentro o fuera de la misma clase se pueden modificar o visualizar desde
otra clase.

Luego tenemos que definir los mtodos: que son funciones las cuales
indican las acciones que puede realizar un objeto. Ellos presentan el
siguiente formato general.

Identificador_accesso function metodo1(argumentos1){


Sentencias1;
}
Identificador_accesso function metodo2 (argumentos2){
Sentencias2;
}

------------------------------------------------------------------
Identificador_accesso function metodom (argumentosm){
Sentenciasm;
}

Donde Identificador de acceso indica el nivel de acceso que se tiene el


mtodo: public o private.

metodo1, metodo2, , metodom : son los nombres de cada uno de los


mtodos.
Existen dos tipos de mtodos que son: el mtodo constructor y los
mtodos normales.

El mtodo constructor: que es un mtodo el cual define el estado


inicial del objeto, cuando l se define, el objeto es inicializado con sus
correspondientes propiedades. El posee el siguiente formato.

Identificador_de_acceso function nombre_Clase(){

$this->Propiedad1 =$valor1;

$this->Propiedad2 =$valor2;

$this->Propiedadn =$valorn;

Dnde :

$this (este): es una palabra reservada la cual se emplea para hacer


referencia al objeto que se est definiendo

$Propiedad1, $Propiedad2, ., $Propiedadn : son las propiedades del


objeto

$valor1, $valor2,.,$valorn : son los valores iniciales para las


correspondientes propiedades del objeto.

Para nuestro ejemplo el mtodo constructor queda definido de la


siguiente manera:

En este caso cuando se crea una instancia del objeto Carro de manera
automtica se asignan los valores para las diferentes propiedades as:
para la Placa NVF139,para el Propietario Carlos Rosero, para el Color
Rojo, para el Modelo 1978 y para el Cilindraje 1300.
Los mtodos normales (Simplemente mtodos): son mtodos
(funciones) los cuales se emplean para indicar una accin que realiza un
objeto o un valor que el devuelve.

Para nuestro ejemplo supongamos: que necesitamos un mtodo que nos


informe dependiendo del modelo del vehculo que el valor del seguro
obligatorio es ms costoso para los vehculos de modelo inferior a 2000
y menos costoso para aquellos que va desde el ao 2000 en adelante.

De esta manera nuestro mtodo queda as:

De modo que nuestra Clase Carro quedara de la siguiente manera:

Instanciar un objeto

Instanciar un objeto es crear una instancia de clase, en otras palabras es


crear un objeto que pertenece a una determinada clase la cual ya ha
sido definida, para lo cual se emplea el siguiente formato
$nombre_objeto=new nombre clase();

Donde

Nombre_objeto: es el nombre del objeto o instancia de la clase es un


identificador o nombre de dato cualquiera y debe seguir las mismas
reglas que se emplean para diferentes tipos de datos. Tambin se
conoce como ejemplar de clase

Nombre_clase: es el nombre de la clase de cual se crea una instancia u


objeto de la clase.

new (nuevo): es una palabra reservada en php, tcnicamente un


operador cuyo propsito es el de crear una nueva instancia de una clase.

Las instancias se pueden crear desde la misma clase donde se defini el


objeto o desde otra clase.

Para nuestro ejemplo lo vamos hacer dentro de la misma archivo asi.

Y en este caso automticamente el objeto ser inicializado con los


valores definidos en el mtodo constructor si este ha sido definido.

Si se instancia se crea desde otro archivo, simplemente habra que


utilizar la funcin include haciendo referencia al archivo donde se
encuentra definida la clase y luego se instancia de igual manera como si
el objeto se hubiese definido en el mismo archivo.

Por ejemplo:

Ahora para acceder a una determinada propiedad de un objeto se


utilizar el siguiente formato:
$nombre_objeto->propiedad

donde nombre_objeto es el nombre con el cual se ha creado la instancia


de una clase y propiedad el nombre de la propiedad del objeto a la cual
se desea hacer referencia, ya sea dentro de una sentencia de
asignacin, comparacin o como parmetro o argumento de un mtodo.

Ejemplos:

Sentencia de Asignacin.

$auto->Modelo=2000;

Como Condicin o comparacin

if($auto->Cilindraje<=1500){

echo El auto consume poco combustible <br />;

Como Parmetro o Argumento de la funcin strlen

echo El nmero del caracteres del propietario es: .strlen($auto-


>Propietario .<br />;

Para acceder a un determinado mtodo de un objeto se utilizar el


siguiente formato:

$nombre_objeto->metodo(argumentos)

Donde: nombre_objeto es el nombre con el cual se ha creado la


instancia de una clase y metodo el nombre del mtodo del objeto a la
cual se desea hacer llamado o referencia, al igual que las funciones, si
el mtodo retorna un valor el deber incluirse dentro de una sentencia
de asignacin, comparacin o como parmetro argumento de un mtodo
o funcin.

Argumentos: representan a la informacin que se enva al metodo y que


es requerida para que el puede realizar su propsito dentro de la clase.

Ejemplo:

En nuestro caso como el metodo informe no retorna ningn valor


simplemente lo llamamos como una sentencia aislada dentro del script
as:
$auto->informe();

El no retorna ningn valor puesto que dentro del cuerpo del metodo, no
aparece por ninguna parte la sentencia return acompaada de un valor.

Actividades:

1. Cree la clase Carro con sus correspondientes propiedades y


mtodos.
2. Llame al mtodo informe en la clase creada
3. Ahora defina las propiedades Modelo y Cilindraje de tipo privado,
observe lo sucedido y saque sus conclusiones.
4. Ahora usted cree una clase llamada estudiante y con las siguientes
propiedades:
Documento de identidad, Apellidos, Nombres, Asignatura, Primer
Parcial y Examen Final y trate de acceder a sus propiedades desde
la misma y desde otra clase.
5. Crear un mtodo llamado definitiva el cual permita calcular la
calificacin definitiva, la cual se obtiene como el 40% del primer
parcial y 60% del examen final.
6. Crear un mtodo llamado: Mensaje el cual imprima un mensaje de
Aprob o reprob segn corresponda.
7. Crear un mtodo llamado: Concepto_Valorativo el cual retorne uno
de los siguientes mensajes:
a. Malo: si la calificacin definitiva es inferior a 2
b. Insuficiente: si la calificacin definitiva va desde 2 y es inferior
a3
c. Aceptable: si la calificacin definitiva va desde 3 y es inferior a
4
d. Bueno: si la calificacin definitiva va desde 4 y es inferior a 4.5
e. Excelente: si la calificacin definitiva va desde 4.5 en adelante
8. Crear una instancia de este objeto y visualizar sus
correspondientes propiedades y acceder a cada uno de sus
mtodos
9. Modificar los valores de las propiedades por fuera de la clase y
nuevamente visualizar sus valores y acceder a cada uno de sus
mtodos.
10. Crear una instancia de la clase estudiante desde otro archivo
externo.

También podría gustarte