Está en la página 1de 4

TALLER DE PROGRAMACIN ORIENTADA A OBJETOS

2011A

Comun ic ac in en tre Objetos


A continuacin se presentan los temas para programar con objetos

POO

1.3 Objetos

TEMAS
1.3 OBJETOS
- Denicin
- Declaracin
- Constructor
- Llamada

Definicin
El autor C. Thomas Wu en su libro Introduccin a la Programacin Orientada a Objetos, Programacin en Java dene a objeto como cualquier cosa tanto tangible como intangible que se pueda imaginar podemos denir nosotros a un objeto como una porcin delimitada de la realidad que tiene caractersticas las cuales se eligen slo las que nos sirvan para la solucin del problema. Estas caractersticas se dividen en atributos y mtodos y su nalidad respectivamente es denir qu es y para qu servir dicho objeto. Estas caractersticas se pueden encontrar a travs de la abstraccin. Tomando como abstraccin el proceso mental de extraer lo esencial (caractersticas) de un objeto en el caso de la programacin orientada a objetos para la solucin del problema. Los objetos entonces que podremos programar se pueden clasicar en tangibles (cosas) por ejemplo lpiz, intangibles (eventos) por ejemplo una tabla de multiplicar y conjunto de personas por ejemplo usuario. Las caractersticas de los objetos se dividen en dos: - Atributos: caractersticas fsicas que me indican qu es el objeto y se obtienen de hacer una abstraccin en primer nivel. Se puede decir que los atributos son datos que se utilizarn en los mtodos - Mtodos: son las caractersticas de comportamiento, describen qu hace el objeto, se obtienen llevando acabo una

abstraccin a profundidad. Los mtodos se puede decir que son los procesos que el objeto ejecutar.

Declaracin
Los objetos los vamos a declarar dentro de la clase de tal manera que queden encapsulados (ver tema 1.4), y se ejecutarn ya sea en otra clase, en algn otro mtodo de otro objeto o en alguna funcin esttica como por ejemplo la funcin principal.

1.3 CLASES
- Denicin
- Simbologa
- Declaracin

Constructor
La metodologa orientada a objetos se basa en los constructores y destructores, los cuales son funciones especiales que no tienen tipos de datos y se llaman igual que la clase. Un constructor sirve para crear al objeto y su principal nalidad es inicializar los valores del objeto, el constructor tambin realiza ciertos proceso que ya estn programados en l mismo tales como reservar espacio en memoria, crear un formato lgico, activar una tabla de smbolos. Todo esto para que se trabaje los atributos y mtodos declarados en la clase como una sola entidad. La nalidad del destructor es borrar al objeto una vez que ya no se usa cuando se est ejecutando el programa por lo que libera memoria dinmica as como la memoria RAM que se pidi al construirse el objeto. En el lenguaje de Java NO EXISTE el destructor, en su lugar se encuentra 2011A

1.4 ENCAPSULAMIENTO
- Denicin
- Ocultamiento de
informacin

1.5 COMUNICACIN ENTRE OBJETOS


- Denicin
- Tipos de Acceso

PROF. SABRINA LIZBETH VEGA MALDONADO

TALLER DE PROGRAMACIN ORIENTADA A OBJETOS


2010A

PROGRAMACIN DE OBJETOS
CMO PROGRAMAR OBJETOS Para programar Objetos es necesario establecer los siguientes pasos: declarar al objeto dentro de una clase, encapsulandolo en ella. Ocultar de la implementacin los detalles de la programacin del objeto Crear una instancia o variable de referencia para mandar llamar su comportamiento y de esta manera acceder al objeto como si fuera una sola entidad aunque este declarado de forma abstracta. Comunicar un objeto con otro
lo que se le conoce como Recolector de Basura. El recolector de basura pasa peridicamente al estarse ejecutando el programa y revisa la memoria y los objetos que encuentra en desuso los marca para su posterior borrado. El programador no tiene control ni puede programar nada sobre el recolector de basura. Si se quiere borrar fsicamente al objeto es necesario programar la funcin nalize( ) del lenguaje de java, aunque esto no es muy recomendable porque se estara modicando directamente la memoria y si no se tiene una buena experiencia con esto se pueden crear errores de desbordamiento de pila o mal uso de recursos fsicos en la memoria. La sintaxis del constructor en el lenguaje de Java es la siguiente: <tipoAcceso> <Identicador> ( [<parmetros>]) { <sentencia 1>; ... <sentencia n>; } Recordando que los parmetros son opcionales y el identicador del constructor debe ser el mismo que el de la clase. Para conocer cuales son los tipos de acceso ver el tema 1.5

La sintaxis para trabajar con la variable de referencia se divide en dos: la declaracin y la creacin, stas se pueden escribir en una sola lnea de cdigo o en dos: Declaracin: <Clase> <identicador>; Creacin: <identicador> = new <Constructor>; La sintaxis en una sola lnea de cdigo es: <Clase> <identicador> = new <Constructor>; Lo que pasa en la memoria al ejecutarse esta lnea de cdigo es que genera un espacio en memoria con el identicador que se declar y lo que contiene es un apuntador que en un inicio apuntar a null y una vez que se manda llamar el constructor, ese apuntador apunta al objeto declarado en la clase.

1.3 Clase

Definicin
Una clase es un conjunto de objetos con las mismas caractersticas o bien lo que se le conoce como una familia de objetos. La nalidad de la clase es ser una contenedora de objetos, es decir, es el elemento de la programacin orientada a objetos que nos permite declarar una sola vez al objeto dentro de ella para despus crear tantos objetos como sean necesarios y una vez creados mandar llamar su comportamiento.

LLamada
Para mandar llamar (ejecutar) al objeto es necesario crear una variable de referencia a la cual tambin se le conoce como instancia esto porque como podemos recordar el objeto est declarado en la instancia entonces para mandarlo llamar es necesario instanciar la clase o que es lo mismo hacer una referencia a dicha clase.

PROF. SABRINA LIZBETH VEGA MALDONADO

2011A

TALLER DE PORGRAMACIN ORIENTADA A OBJETOS


2010A

Simbologa
La representacin de una clase cuando se est desarrollando el diseo del sistema es un rectngulo con tres reas. La primera rea es para establecer el identicador de la clase. Para seguir el estndar al identicador de la clase se le pone el mismo nombre que se va a declarar dentro de ella, es decir, si en la clase voy a declarar el objeto alumno entonces el identicador de la clase ser Alumno, esto no porque la clase y el objeto sean lo mismo sino porque como el objeto va a estar declarado de forma abstracta (enlistado de atributos y mtodos). La segunda rea es para establecer los atributos y aunque se pueden poner solamente sus identicadores se recomienda de una vez indicar el tipo de dato de cada atributo as como su tipo de acceso de una vez. La tercera rea ser para los mtodos y de igual manera se puede establecer de una vez su tipo de dato y su tipo de acceso, cabe mencionar que aqu los atributos slo se mencionarn.

1.4 Encapsulamiento

Definicin

Fuera de programacin cuando se dice que algo se encapsula es porque estamos diciendo que ese algo ser guardado en un lugar que est cerrado hermticamente, es decir signica encerrar en un lugar totalmente sellado en donde no entra ni sale nada. Esta misma denicin usaremos para la programacin orientada a objetos pero lo que estaremos encerrando sern los objetos y el lugar donde los encerramos es en la clase. Por lo que al declarar atributos y mtodos (objeto abstracto) dentro de la clase lo estamos encapsulando en ella por lo tanto no podr salir de ella. Por lo que es necesario crear una instancia o variable de referencia como se explic en el tema 1.1 (llamada del objeto) para ejecutar el comportamiento del objeto ya que no podemos mandar llamar su mtodos as nadamas por la razn que est encapsulado dicho objeto. El encapsulamiento por lo tanto nos permite manejar a los atributos y mtodos declarados en la clase como una sola entidad y no como datos y procesos por separado. Sin embargo, podemos en cualquier momento mandar llamar cualquier atributo y/o mtodo a travs de la instancia esto provocara el rompimiento del encapsulamiento ya que estaramos ejecutando sus caractersticas por separado. Para no romper con el encapsulameinto se utiliza el ocultamiento de informacin

Ocultamiento de Informacin
Signica esconder de la implementacin (lugar donde se manda llamar el comportamiento del objeto, por lo general es la funcin principal) los detalles de la programacin de dicho objeto. Esto es que los atributos slo se llamaran en sus propios mtodos y los mtodos que realicen procesos especcos tambin se podrn llamar en mtodos que sirvan para obtener el resultado deseado de esta manera slo se llamaran a travs de la instancia los mtodos que tengan el resultado deseado. Para tener un control sobre quien manda llamar a quien utilizamos los tipos de acceso o control de acceso de los atributos y mtodos explicado en el tema 1.5

Declaracin
La sintaxis de una clase se dene de la siguiente manera: [<tipoAcceso>] class <Identicador> { <tipoAcceso> <atributo1>; ... <tipoAcceso> <atributoN>; <tipoAcceso > <mtodo1>( [<parmetros>] ) { <sentencias>; } .... <tipoAcceso > <mtodoN>( [<parmetros>] ) { <sentencias>; } } Para conocer cuales son los tipos de acceso ver el tema 1.5

1.5 Comunicacin entre objetos

Definicin

La comunicacin entre los objetos se logra a travs de ejecutar su comportamiento en diferentes partes de dnde fue declarado el objeto y aunque en la mayora de los casos se manda llamar en la funcin principal tambin se puede mandar llamar en cualquier otra clase, esto quiere decir que en cualquier otra clase B se puede declarar y crear la instancia como atributo de la misma y en sus mtodos mandar llamar un comportamiento especco del objeto declarado en la clase A

PROF. SABRINA LIZBETH VEGA MALDONADO

2011A

TALLER DE PROGRAMACIN ORIENTADA A OBJETOS


De esta manera logramos que un objeto declarado en una clase se comunique con otro objeto declarado en otra clase.

2010A Cuando no se pone tipos de acceso en las clases, no existe un tipo por default, esto quiere decir que una clase puede no tener tipo de acceso. Tipos de acceso para los atributos y mtodos: pblico: En el lenguaje se establece la palabra public y en el diseo se puede indicar con el smbolo de + (mas). Signica que se pueden mandar llamar (ser vistos) desde cualquier clase en cualquier archivo y cualquier paquete, es decir, son accesibles desde cualquier lugar. privado: En el lenguaje se establece la palabra reservada private y en el diseo se puede indicar con el smbolo de - (menos) signica que se pueden mandar llamar (ser vistos) slo desde el mismo objetos, es decir, nicamente desde sus propios mtodos pueden acceder a los atributos y mtodos privados. protegido: En el lenguaje se establece la palabra reservada protected y en el diseo se puede indicar con el smbolo de # (gato). Signica que slo los pueden mandar llamar (ser vistos) por las subclases. Las subclases son clases que dependen de otra clase. amigable: Es el tipo de acceso por default, es decir si no se establece ningn tipo de acceso, se convierten en friendly, no se tiene una palabra reservada en el lenguaje y tampoco un smbolo especco. Signica que pueden mandarse llamar (ser vistos) desde cualquier lugar siempre y cuando sean parte del mismo paquete. Un paquete en java es un conjunto de clases.

Tipos de Acceso
Tambin se le conoce como control de acceso y nos permite llevar a cabo de una manera ms precisa el ocultamiento de informacin y de esta manera asegurarnos de no romper con el encapsulamiento cuando los objetos se estn comunicando entre s. Los tipos de acceso o control de acceso se pueden utilizar tanto para la clase como para los atributos y mtodos pero en cualquiera de los dos casos se est hablando de controles totalmente diferentes. El control de acceso para las clases nos permite denir el tipo de clase con la que vamos a trabajar mientras que el control de acceso para los atributos y mtodos nos permite indicar cual ser el alcance de los mismos. Tipos de acceso para las clases: pblico: en el lenguaje se establece la palabra reservada public y signica que esa clase es accesible desde otra clase sin importar que est en otro archivo o an en otro paquete. abstracto: se establece la palabra reservada abstract y signica que la clase va a tener mtodos abstractos que podrn ser implementados en otras clases. La clase abstracta no se instancia. nal: se establece la palabra reservada nal y signica que esa clase no puede tener herencia.

PROF. SABRINA LIZBETH VEGA MALDONADO

2011A

También podría gustarte