0% encontró este documento útil (0 votos)
16 vistas37 páginas

Programación Orientada A Objetos

Programación orientada a objetos

Cargado por

dinaluledesma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
16 vistas37 páginas

Programación Orientada A Objetos

Programación orientada a objetos

Cargado por

dinaluledesma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 37

Programación Orientada a Objetos

(POO)
Introducción
• Java se basa en la programación orientada a
objetos.
• Hasta ahora hemos programado en forma
estructurada pero hemos utilizado objetos de
Java.
Introducción
• Un programa orientado a objetos es el
resultado de la colaboración de varios tipos de
objetos entre sí, cada uno con sus
funcionalidades prestando o solicitando
servicios a otros. Un objeto que no es utilizado
por otros o que no utiliza a otros, no tiene
sentido.
Características de la POO
• Abstracción: Denota las características más
esenciales de un objeto, generalizando algo de
la realidad capturando sus Atributos y
Comportamientos.
Características de la POO

• Encapsulación
• Es el mecanismo por el cual los datos y los
códigos están protegidos de su acceso desde el
exterior; es decir por parte de otros objetos que
necesitan su colaboración. Un objeto sólo expone
las funcionalidades expresadas en su interfaz
público y ocultan tanto su código como su
representación. La clase con sus diferentes tipos
de acceso es quien implementa la encapsulación.
Características de la POO
• Modularidad: Permite subdividir una
aplicación en pequeñas partes (módulos), de
modo que, podemos escribir pequeños
bloques de código de forma independiente, y
luego interconectarlos.
Características de la POO
• Polimorfismo: Esto nos permite tener
comportamientos (métodos) distintos, en
distintos objetos y compartiendo el mismo
nombre. Al ser llamado el método por su
nombre, podemos obtener un distinto
comportamiento.
Características de la POO
• Herencia: Nos permite "pasar" atributos y
comportamientos de un objeto a otro, de
modo que, dos objetos similares pueden tener
una relación de herencia.
•Acelerar
•Frenar
•Girar
Conceptos POO

• Clase
• Objeto
• Atributo
• Método
Conceptos POO
• Clase
• Una clase es una plantilla para la creación de
objetos, haciendo uso de la abstracción,
creamos una clase en la cual describimos los
Atributos y el comportamiento de
(generalmente) algún objeto de la realidad.
public class Persona{
.
.
.
}
Conceptos POO
• Objeto
• Los objetos son concreciones (realidades)
instanciadas de las clases. Estas son
abstracciones que representan como son los
objetos de dicha clase y cuáles son sus
funcionalidades.
• Es una instancia de una clase.

Persona Julia = new Persona();


Conceptos POO

• Atributo
• Son las características que describen y definen
a una clase, al tomar valores definen el estado
de un objeto. Cada atributo cuenta con un
identificador y un tipo.
Conceptos POO
• Método
• Los métodos definen el comportamiento
posible de los objetos de una clase. Son la
implementación de un algoritmo y se ejecuta
mediante una llamada (invocación) o un
mensaje. Pueden modificar el valor de los
atributos o a su vez llamar a otros métodos.
Conceptos POO
• Ejemplo de método:
Definición de clase

¿Qué definen las clases?

• Las clases definen la estructura y el


comportamiento de los objetos de un tipo
particular. Podemos decir que las clases son
en realidad modelos de objetos del mismo
tipo.
¿Qué definen las clases?

• En Java las clases se implementan con la


palabra reservada class. Una class es un
bloque ({ }) en el que se definen las
propiedades o atributos (variables) y los
métodos o funcionalidades (funciones).

public class producto{

Modificador de acceso Palabra reservada Nombre


Modificadores de acceso
• En Java existen cuatro modificadores de
acceso para definir el ámbito desde el que
puede ser usadas las clases, las variables y los
métodos:
• public
• private
• protected
• sin modificador.
Modificadores de acceso
Atributos

• Las variables miembro dentro de la definición


de una clase son de dos tipos: de instancia y
de clase.
Atributos
• de instancia: son los atributos que tendrá cada
objeto, son espacios de memoria en los que se
almacenan los datos de cada objeto. Se crean
cuando se crea el objeto y se liberan cuando se
liberan los objetos.

• de clase: son atributos que comparten todos los


objetos de una clase, no pertenecen a ningún
objeto son de la clase. Se definen utilizando la
palabra static.
¿Qué definen los atributos?
• La definición de cualquiera de los dos tipos es casi como
se ha visto hasta este momento para la definición de
variables dentro de la función main, añadiendo el
modificador de acceso a dicha variable, que se define con
las palabras clave private, protected, public o sin ninguna
de ellas, tal y como sigue:

modificador de acceso: private


tipo: int
nombre: clave
Métodos
• Los métodos son las funciones miembro de la
clase que van a definir el comportamiento de
los objetos y como la variables son de dos
tipos: de instancia y de clase.

• El valor devuelto puede ser void, cualquier


tipo primitivo del lenguaje o una referencia a
cualquier tipo de objeto (cualquier
identificador de clase).
Ejemplos de métodos
Ámbito
• El ámbito tanto en la clase, como en las variable,
como en los métodos define quien puede
acceder a la clase, a la variable o al método.

• En POO para implementar la encapsulación hay


que definir los atributos como privados, para así
ocultar la representación. Y exponer en una parte
pública a los métodos, para así definir el interfaz
de uso de los objetos de una clase.
Crear objeto

• Cuando se crea el objeto se invoca a una de


sus métodos constructores.
• El objetivo de estos métodos es inicializar con
valores determinados las variables miembro
(atributos) de la clase.
Objetos o instancias de una clase
• Para crear una instancia de un objeto se utiliza el
operador new:

• Persona alumno1; //define la variable alumno1 de tipo Persona


• alumno1 = new Persona(); //crea el objeto alumno1

• Se puede hacer en una sola línea:


• Persona alumno1 = new Persona();
Constructores

• Los constructores son funciones que se


ejecutan cuando se crean los objetos. Cuando
se crea un objeto con new, primero se reserva
el espacio para almacenar los valores de cada
uno de sus atributos y a continuación el
código de un constructor definido en la clase.
Constructores

• Las funciones constructoras tienen el mismo


nombre que la clase, una lista de parámetros
que puede estar vacía y no devuelven nada (ni
void). Son las únicas funciones en Java que no
devuelven ningún valor.
Constructores - ejemplos

this hace
referencia
al objeto
actual
Constructores - sobrecarga

• En una clase se pueden definir tantos


constructores como se necesiten. Cada
constructor representa una forma distinta de
crear los objetos de una clase.
• También los métodos se pueden sobrecargar.
Constructores - sobrecarga

• Cuando una clase tiene varios constructores se


dice que estas funciones constructoras están
sobrecargadas.
• La sobrecarga es el mecanismo por el cual en una
clase pueden existir varias funciones que
teniendo el mismo nombre se diferencian en el
número y/o el tipo de los parámetros.
• Este es el caso de los constructores, todos tienen
el mismo nombre, pero se diferencian en la lista
de parámetros.
Constructores - ámbito

• Otra característica que hay que tener en


cuenta con los constructores es que tienen
que estar en un ámbito como public para que
así se pueda acceder desde donde se intente
crear el objeto.
Acceso a los métodos: get y set
• Getter y Setter

• Los métodos “getter” y “setter” son métodos


de acceso a los datos de los objetos y son
siempre públicos.
• Cada método accede a un sólo dato (una sola
variable de instancia - atributo) para obtener
su valor o cambiarlo.
Acceso a los métodos: get y set
• Getter y Setter

• Las funciones “getter” retornan el valor de


una variable de clase (atributo) y las funciones
“setter” cambian el valor de un atributo. Por
estilo estos métodos utilizan identificadores
que comienzan por set o get y a continuación
el nombre de la variable miembro
comenzando por mayúscula.
Acceso a los métodos: get y set
• Getter y Setter - ejemplo
Ejemplo
Creo la variable de objeto

Pido los datos

Creo el objeto pasándole


los parámetros.

Obtengo los valores con los


get y los muestro.

Salida
Ejemplo
Usando el constructor sin parámetros:

Creo la variable y el objeto

Coloco los valores en los


atributos del objeto
usando set.

Obtengo los
valores con
los get y los
muestro.

También podría gustarte