Está en la página 1de 4

Capítulo I: “Introducción a la Programación Orientada a

Objetos”
Nos estamos adentrando a una nueva aventura, en la cual,
conoceremos acerca del interesantísimo, útil y actual lenguaje
de Programación: Java.

1.1 Programación Convencional


Como todos sabemos, los programas se componen de
procedimientos y datos. Los procedimientos son los que se
encargan de realizar tareas específicas, como calcular la suma
de dos números, o mostrar un Frame en pantalla. Los
argumentos (datos que se le pasan a los procedimientos), son
generalmente estructuras globales o se pasan como
parámetros.
Java, es un lenguaje de programación Orientado a Objetos…
mmm… entonces, ¿qué es la programación orientada a
objetos?... pues bien, es una técnica de programación, que
usa los objetos como secuencia de construcción.
Y, ¿qué es un objeto?, Un Objeto es una colección de datos,
junto con las funciones asociadas a esos datos y que operan
sobre ellos.
Lo importante y fundamental de los objetos, son las
propiedades de ellos, y éstas son:
• Herencia

• Encapsulamiento o Encapsulación

• Polimorfismo.
Supongo que, al igual que yo, es muy difícil de buenas a
primeras comprender la Abstracción de los objetos, en
programación.
Pero no es tan difícil como parece, solo mire a su alrededor…
¿Qué ve?... una lámpara, un escritorio, una computador, ¿qué
es lo que ve?... un sofá, unos libros…. Pues bien, todas las
cosas que usted ve, son objetos. Debemos tener presente
que, los humanos pensamos en términos de objetos.
Por ejemplo, si usted ve una lámpara, inmediatamente la
identifica como tal, pero usted sabe que un lámpara se
compone de una base (que puede ser de metal, de porcelana,
de plástico), se compone también de un foco, el cual es el que
emite la luz, posee también una cortinilla, que a veces es sólo
cartón forrado, y que sirve como adorno. Etc, etc… pero usted
cuando piensa en una lámpara, NO piensa en los
componentes de ésta, sino que piensa en el objeto_lámpara

1.2 Características de los Objetos


Los objetos como tales, presentan muchas cualidades
diferentes, respecto a una variable simple. Entre ellas
podemos mencionar las siguientes:
1. Los objetos se pueden agrupar en rubros (o tipos)
denominados Clases
2. El estado de los objetos está determinado por los datos
del mismo
3. Permite lo que se conoce como Ocultación de datos

4. Pueden heredar propiedades de otros objetos


5. Por medio de los Mensajes un objeto se puede
comunicar con otro
6. Los métodos definen el comportamiento de los objetos

Un objeto se puede representar gráficamente de la siguiente


manera:

En donde, Nombre, es identificar correspondiente a ese


objeto: Por ejemplo Empleados(), Alumnos(), Datos(), etc, etc.
Los atributos, son los datos con los que operan los métodos (o
Funciones) del objeto.
Y las Funciones o Métodos, son las que operan sobre esos
datos.
Clases
Se puede decir, que son tipos definidos por el usuario, las
cuales determinan la estructura de los datos y las funciones
asociadas con esos tipos.
Las clases como plantillas (que el programador crea). La clase
define las variables y los métodos comunes a los objetos de
ese tipo, pero luego, cada objeto tendrá sus propios valores y
compartirán las mismas funciones.
Primero deberemos crear una clase antes de poder crear
objetos o instancias (ejemplares) de esa clase.
¿Qué son los mensajes?
Para poder crear una aplicación se necesita más de un objeto,
y estos objetos no pueden estar aislados unos de otros, para
comunicarse esos objetos se envían mensajes.
Los mensajes son simples llamadas a las funciones o métodos
del objeto con el se quiere comunicar para decirle que haga
alguna cosa.
¿Qué es la herencia?
La herencia es un mecanismo que permite crear una clase
basándose en una clase existente, y ésta tendrá todas las
variables y los métodos de su ‘superclase’, y además se le
podrán añadir otras variables y métodos propios.
Se llama ‘Superclase’ a la clase de la que desciende una
clase.

Polimorfismo
(Poli=muchos; morfo=Formas), Polimorfismo, es la cualidad
de tener más de una forma. Java, permite que el código de
sus programas tenga la posibilidad de ser usados con
diferentes tipos de datos u objetos.
Por ejemplo, supongamos que A y B son dos variables de tipo
entero, entonces, la operación:
C= A+B
Nos devolverá la suma de éstos dos números, el cuyo
resultado será guardado en la variable C.
Pero supongamos que A y B son del tipo String (es decir, dos
cadenas de caracteres):
String A= “Hola”;
String B= “Bienvenidos a la Programación en Java”;
String C;
C=A+B;
Al tener esa secuencia de commandos, ya no obtendremos
como resultado la suma de esos dos números, sino la
concatenación de esas dos cadenas. Por tanto, el resuldao en
pantalla, sería el siguiente: