Está en la página 1de 68

Módulo 1-Sesión 3

Conceptos de orientación a objetos

Bienvenido a esta tercera sesión en la que te


explicaremos qué es un objeto en el contexto
de la programación.

1 / 17
Módulo 1-Sesión 3
Conceptos de orientación a objetos

Bienvenido a esta tercera sesión en la que te


explicaremos qué es un objeto en el contexto
de la programación.

Para ello, continuarás con el ejemplo de la


orquesta. Piensa que vas a programar el
desempeño de ésta.

1 / 17
Módulo 1-Sesión 3
Conceptos de orientación a objetos

Bienvenido a esta tercera sesión en la que te


explicaremos qué es un objeto en el contexto
de la programación.

Para ello, continuarás con el ejemplo de la


orquesta. Piensa que vas a programar el
desempeño de ésta.

Identificarás los términos más comunes en la


programación orientada a objetos.

1 / 17
Módulo 1-Sesión 3
Objeto

El primer término que verás es objeto.

2 / 17
Módulo 1-Sesión 3
Objeto

El primer término que verás es objeto.


El objeto es un ejemplar (instance o instancia)
de una clase.

2 / 17
Módulo 1-Sesión 3
Objeto

El primer término que verás es objeto.


El objeto es un ejemplar (instance o instancia)
de una clase.
Mientras no se construyan objetos de una
clase dada, nada existe y nada puede suceder.

2 / 17
Módulo 1-Sesión 3
Objeto

El primer término que verás es objeto.


El objeto es un ejemplar (instance o instancia)
de una clase.
Mientras no se construyan objetos de una
clase dada, nada existe y nada puede suceder.
Por ejemplo, el violı́n primero y el violı́n
segundo de la orquesta, son objetos.

2 / 17
Módulo 1-Sesión 3
Clase

Por otro lado está la clase.

3 / 17
Módulo 1-Sesión 3
Clase

Por otro lado está la clase.


Describe la conducta y los atributos
(caracterı́sticas como altura, peso) que deben
tener los ejemplares (instances) de esa clase.

3 / 17
Módulo 1-Sesión 3
Clase

Por otro lado está la clase.


Describe la conducta y los atributos
(caracterı́sticas como altura, peso) que deben
tener los ejemplares (instances) de esa clase.

Un violinista tiene que tener, al menos, un


violı́n y debe saber tocarlo.

3 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción
– o recordar información.

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción
– o recordar información.
Para un violinista un atributo puede ser:

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción
– o recordar información.
Para un violinista un atributo puede ser:
– el violı́n

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción
– o recordar información.
Para un violinista un atributo puede ser:
– el violı́n
– la partitura

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción
– o recordar información.
Para un violinista un atributo puede ser:
– el violı́n
– la partitura
– su lugar en la orquesta

4 / 17
Módulo 1-Sesión 3
Atributo

Otro término es atributo.


El atributo es lo que usa el objeto para:
– poder realizar alguna acción
– o recordar información.
Para un violinista un atributo puede ser:
– el violı́n
– la partitura
– su lugar en la orquesta

Un atributo Puede cambiar su valor de


acuerdo a cuál sea el violinista particular

4 / 17
Módulo 1-Sesión 3
Métodos o funciones propias

Después están los métodos o funciones propias

5 / 17
Módulo 1-Sesión 3
Métodos o funciones propias

Después están los métodos o funciones propias

Describen lo que un objeto de una clase determinada sabe


y puede hacer.

5 / 17
Módulo 1-Sesión 3
Métodos o funciones propias

Después están los métodos o funciones propias

Describen lo que un objeto de una clase determinada sabe


y puede hacer.

Por ejemplo, un violinista sabe:

5 / 17
Módulo 1-Sesión 3
Métodos o funciones propias

Después están los métodos o funciones propias

Describen lo que un objeto de una clase determinada sabe


y puede hacer.

Por ejemplo, un violinista sabe:

– Leer una partitura

5 / 17
Módulo 1-Sesión 3
Métodos o funciones propias

Después están los métodos o funciones propias

Describen lo que un objeto de una clase determinada sabe


y puede hacer.

Por ejemplo, un violinista sabe:

– Leer una partitura

– Tocar lo que hay en la partitura

5 / 17
Módulo 1-Sesión 3
Métodos o funciones propias

Después están los métodos o funciones propias

Describen lo que un objeto de una clase determinada sabe


y puede hacer.

Por ejemplo, un violinista sabe:

– Leer una partitura

– Tocar lo que hay en la partitura

En resumen, sabe reproducir la partitura.

5 / 17
Módulo 1-Sesión 3
Acceso

Otro de los términos que es necesario que comprendas es


el de acceso.

6 / 17
Módulo 1-Sesión 3
Acceso

Otro de los términos que es necesario que comprendas es


el de acceso.

Significa que cada clase decide qué o quién puede ver o


manipular a los atributos, o solicitar los servicios (métodos)
de sus objetos.

6 / 17
Módulo 1-Sesión 3
Acceso

Otro de los términos que es necesario que comprendas es


el de acceso.

Significa que cada clase decide qué o quién puede ver o


manipular a los atributos, o solicitar los servicios (métodos)
de sus objetos.

Para el violinista:

6 / 17
Módulo 1-Sesión 3
Acceso

Otro de los términos que es necesario que comprendas es


el de acceso.

Significa que cada clase decide qué o quién puede ver o


manipular a los atributos, o solicitar los servicios (métodos)
de sus objetos.

Para el violinista:
– No permite que nadie use su violı́n

6 / 17
Módulo 1-Sesión 3
Acceso

Otro de los términos que es necesario que comprendas es


el de acceso.

Significa que cada clase decide qué o quién puede ver o


manipular a los atributos, o solicitar los servicios (métodos)
de sus objetos.

Para el violinista:
– No permite que nadie use su violı́n

– o que se lo cambien.

6 / 17
Módulo 1-Sesión 3
Acceso

Otro de los términos que es necesario que comprendas es


el de acceso.

Significa que cada clase decide qué o quién puede ver o


manipular a los atributos, o solicitar los servicios (métodos)
de sus objetos.

Para el violinista:
– No permite que nadie use su violı́n

– o que se lo cambien.

– Su partitura es personal, no le sirve al pianista.

6 / 17
Módulo 1-Sesión 3
Herencia

También está la herencia.


– Como advertiste en el ejemplo de la orquesta, los individuos
(músicos, instrumentos) se agrupan a su vez en
superclases.
– Éstas a su vez en grupos más grandes que comparten
ciertas caracterı́sticas.
Si lo ves como un árbol de cabeza, hasta arriba está el
menos especı́fico y hasta abajo el más especı́fico.
Músico

director violinista pianista

1er violı́n 2do violı́n


7 / 17
Módulo 1-Sesión 3
Herencia

Por ejemplo en la orquesta, una raı́z podrı́an ser los


instrumentos de cuerdas, los cuales comparten
caracterı́sticas entre sı́.
En el caso de Java hay una herencia simple, (sólo una
superclase) pero existen lenguajes como C++ que permiten
la herencia múltiple (más de una súperclase).
Personas

Policı́as Ladrones

Policı́as
corruptos
8 / 17
Módulo 1-Sesión 3
Colaboración

Pero, ¿cómo se logra que los objetos colaboren entre sı́?

9 / 17
Módulo 1-Sesión 3
Colaboración

Pero, ¿cómo se logra que los objetos colaboren entre sı́?

Para ello están los mensajes, que son solicitudes de


servicios (invocaciones o llamadas a métodos o funciones).

9 / 17
Módulo 1-Sesión 3
Colaboración

Pero, ¿cómo se logra que los objetos colaboren entre sı́?

Para ello están los mensajes, que son solicitudes de


servicios (invocaciones o llamadas a métodos o funciones).

Por ejemplo, el director pide al primer violı́n que toque una


melodı́a especı́fica.

9 / 17
Módulo 1-Sesión 3
Colaboración

Pero, ¿cómo se logra que los objetos colaboren entre sı́?

Para ello están los mensajes, que son solicitudes de


servicios (invocaciones o llamadas a métodos o funciones).

Por ejemplo, el director pide al primer violı́n que toque una


melodı́a especı́fica.

Si el objeto que recibe la solicitud no la entiende o no la


conoce, simplemente el programa no compilará.

9 / 17
Módulo 1-Sesión 3
Encapsulado

Otra palabreja que se usa en orientación a objetos es el


encapsulado.

10 / 17
Módulo 1-Sesión 3
Encapsulado

Otra palabreja que se usa en orientación a objetos es el


encapsulado.
Se refiere a que, mediante la elección del acceso, podemos
mantener a nustros objetos “aislados” del mundo exterior y
acceder a él únicamente mediante mensajes.

10 / 17
Módulo 1-Sesión 3
Encapsulado

Otra palabreja que se usa en orientación a objetos es el


encapsulado.
Se refiere a que, mediante la elección del acceso, podemos
mantener a nustros objetos “aislados” del mundo exterior y
acceder a él únicamente mediante mensajes.

De esta manera, si conocemos la forma de los mensajes,


podemos utilizar al objeto desde cualquier otra clase.

10 / 17
Módulo 1-Sesión 3
Polimorfismo

Por último, te hablaremos del término polimorfismo, que


quiere decir “muchas formas”.

11 / 17
Módulo 1-Sesión 3
Polimorfismo

Por último, te hablaremos del término polimorfismo, que


quiere decir “muchas formas”.

Un método con el mismo nombre, por ejemplo el método


tocar, puede tener significados muy distintos en cuanto a lo
que va a producir.

11 / 17
Módulo 1-Sesión 3
Polimorfismo

Por último, te hablaremos del término polimorfismo, que


quiere decir “muchas formas”.

Un método con el mismo nombre, por ejemplo el método


tocar, puede tener significados muy distintos en cuanto a lo
que va a producir.

Por ejemplo, la clase instrumento debe tener la habilidad de


producir sonido (tocar); si lo hace un violı́n, el sonido que
produce es muy distinto al de un tambor.

11 / 17
Módulo 1-Sesión 3
Polimorfismo

Por último, te hablaremos del término polimorfismo, que


quiere decir “muchas formas”.

Un método con el mismo nombre, por ejemplo el método


tocar, puede tener significados muy distintos en cuanto a lo
que va a producir.

Por ejemplo, la clase instrumento debe tener la habilidad de


producir sonido (tocar); si lo hace un violı́n, el sonido que
produce es muy distinto al de un tambor.

El término se refiere justo a eso: misma forma del mensaje,


distinto resultado.

11 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase
– Métodos o funciones propias

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase
– Métodos o funciones propias
– Acceso

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase
– Métodos o funciones propias
– Acceso
– Herencia

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase
– Métodos o funciones propias
– Acceso
– Herencia
– Mensajes

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase
– Métodos o funciones propias
– Acceso
– Herencia
– Mensajes
– Encapsulamiento

12 / 17
Módulo 1-Sesión 3
Recapitulación

Ya has visto los distintos términos de la programación


orientada a objetos, ¿los recuerdas todos? Revisaste que
eran:
– Atributo
– Objeto
– Clase
– Métodos o funciones propias
– Acceso
– Herencia
– Mensajes
– Encapsulamiento
– Polimorfismo

12 / 17
Módulo 1-Sesión 3
Java como lenguaje orientado a objetos

Con la exposición de los términos utilizados en la


programación orientada a objetos, queda una pregunta por
responder:

¿qué quiere decir que Java sea un


lenguaje
“orientado a objetos”?

13 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:

14 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:
– juegos

14 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:
– juegos
– ciencias

14 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:
– juegos
– ciencias
– tecnologı́a móvil

14 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:
– juegos
– ciencias
– tecnologı́a móvil
– aplicaciones de negocios,

14 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:
– juegos
– ciencias
– tecnologı́a móvil
– aplicaciones de negocios,
– entre otros.

14 / 17
Módulo 1-Sesión 3
Usos de Java

Java es uno de los lenguajes más usados hoy en dı́a, en


todo tipo de campos:
– juegos
– ciencias
– tecnologı́a móvil
– aplicaciones de negocios,
– entre otros.

Si bien no es el primer lenguaje orientado a objetos que se


diseñó, sı́ es uno de los que más influencia ha tenido.

14 / 17
Módulo 1-Sesión 3
Organización de Java

Los proyectos escritos en Java se implementan a través de


clases.

15 / 17
Módulo 1-Sesión 3
Organización de Java

Los proyectos escritos en Java se implementan a través de


clases.

Una vez definidas las clases,

15 / 17
Módulo 1-Sesión 3
Organización de Java

Los proyectos escritos en Java se implementan a través de


clases.

Una vez definidas las clases, se construyen objetos

15 / 17
Módulo 1-Sesión 3
Organización de Java

Los proyectos escritos en Java se implementan a través de


clases.

Una vez definidas las clases, se construyen objetos y se


determina la interacción entre ellos,

15 / 17
Módulo 1-Sesión 3
Organización de Java

Los proyectos escritos en Java se implementan a través de


clases.

Una vez definidas las clases, se construyen objetos y se


determina la interacción entre ellos, desde un método
principal (main) que reside en alguna de las clases
definidas.

15 / 17
Módulo 1-Sesión 3
Java como lenguaje de propósito general

No puedes ejecutar nada si no tienes al menos una clase


donde resida el método principal (main).
Java no es un lenguaje puro de objetos.
Permite el uso de algunas variables y atributos de carácter
primitivo:
– números,
– caracteres,
– sı́mbolos diversos
– y variables lógicas,
que pueden tomar un número finito de valores
esto depende de su representación en la máquina donde
se ejecuta, la máquina virtual.

16 / 17
Módulo 1-Sesión 3
Java como un lenguaje orientado a objetos

Como no puedes ejecutar nada que no esté en una


clase, se dice que Java es un lenguaje orientado a
objetos (OO).

17 / 17

También podría gustarte