Sei sulla pagina 1di 7

ESTRUCTURAS DE DATOS

UNIDAD UNO - SEMANA UNO


CONCEPTOS SOBRE PROGRAMACIÓN
ORIENTADA A OBJETOS *

TABLA DE CONTENIDO

1. CLASES 2
2. ATRIBUTOS Y MÉTODOS 3
3. OBJETOS 5
4. ARREGLOS 6
EN RESUMEN 7
PARA TENER EN CUENTA 7

*
Resumen del libro Estructuras de Datos en Java de Alejandro Sotelo Arévalo, cuya publicación está pendiente.

ESTRUCTURAS DE DATOS 1
1. CLASES

El término abstracción se refiere al proceso mediante el que se representa en el mundo de


las ideas un conjunto de objetos, seleccionando sólo aquellas características que interesan,
excluyendo toda propiedad que no importe. De esta manera podemos definir el término
clase como la abstracción de un conjunto de objetos reunidos bajo el mismo concepto.

Por ejemplo, observe las siguientes imágenes:



Gráfica 1: Cuatro animales .

Todos los animales mostrados se reúnen bajo el mismo concepto: perro, y aunque los cuatro
perros son distintos, tienen muchas cosas en común, pues todos son perros.

Dependiendo de la situación, nuestro cerebro considera sólo aquellas características que


interesan de los perros, por ejemplo:
Nombre.
Raza.
Fecha de nacimiento.
Género (masculino/femenino).
Documento de identificación del dueño.
Nombres y apellidos del dueño.

Si fuésemos un médico veterinario probablemente nos interesarían más características de los


perros:
Historial de vacunación.
Historial de desparasitación.
Enfermedades que ha tenido.
Cirugías que ha tenido.
Tipo de alimento que consume.


Imágenes tomadas de http://www.morguefile.com/. morgueFile: public image archive for creatives by
creatives, © 2009-2010 MORGUEFILE.

ESTRUCTURAS DE DATOS 2
Observe que las características consideradas dependen de qué nos importa. Así pues, la
abstracción es el proceso que seguimos para escoger las características que nos interesan
sobre los perros con el objetivo de tener una idea en la mente de qué es un perro.

Obviamente los perros tienen muchas más propiedades que pueden no interesarnos en
nuestra abstracción: número de pulgas, color favorito, número de horas promedio que
duerme, secuencia de ADN, etc. Por esto es importante el proceso de abstraer: nos permite
quedarnos con lo que realmente necesitamos.

Entonces, la clase Perro corresponde con la abstracción mental de todos los objetos del
mundo que nosotros identificamos como perros. Para definir la clase Perro en Java se debe
escribir:

Código 2: Declaración de la clase Perro en Java.


public class Perro {
...
}

2. ATRIBUTOS Y MÉTODOS
Recurso como proyecto en Eclipse: Clases.zip.

Una clase se define mediante:

Un nombre que la identifica.


Atributos que describen las características de los objetos de la clase.
Métodos que describen el comportamiento de los objetos de la clase.

Código 3: Atributos y métodos de ejemplo para la clase Perro.


// Declaración de la clase Perro
public class Perro {

// -------------------------
// - Atributos de la clase -
// -------------------------

private String nombre; // Nombre del perro


private String raza; // Raza del perro
private String fechaNacimiento; // Fecha de nacimiento del perro en formato dd/mm/aaaa
private boolean genero; // true si es masculino, false si es femenino

// ----------------------------------
// - Método constructor de la clase -
// ----------------------------------

public Perro(String pNombre, String pRaza, String pFechaNacimiento, boolean pGenero) {


nombre=pNombre;
raza=pRaza;
fechaNacimiento=pFechaNacimiento;
genero=pGenero;
}

ESTRUCTURAS DE DATOS 3
// --------------------------------------
// - Atributos analizadores de la clase -
// --------------------------------------

public String darNombre() {


return nombre;
}

public String darRaza() {


return raza;
}

public String darFechaNacimiento() {


return fechaNacimiento;
}

public boolean esMasculino() {


if (genero) {
return true;
}
else {
return false;
}
}

public boolean esFemenino() {


if (genero) {
return false;
}
else {
return true;
}
}

// ---------------------------------------
// - Atributos modificadores de la clase -
// ---------------------------------------

public void cambiarNombre(String pNuevoNombre) {


nombre=pNuevoNombre;
}

public void ladrar() {


// ...
}

Es importante resaltar que los atributos representan características y que los métodos
representan comportamiento. Según su función, los métodos se clasifican en:

Métodos constructores: son los responsables de crear nuevas instancias de la clase.


Métodos analizadores: son los responsables de permitir consultas sobre los atributos de la
clase.
Métodos modificadores: son los responsables de permitir modificaciones sobre los atributos
de la clase.

ESTRUCTURAS DE DATOS 4
3. OBJETOS
Recurso como proyecto en Eclipse: Clases.zip.

Un objeto es una instancia o particularización de una clase. Por ejemplo, cuatro objetos de la
clase Perro son:

Gráfica 4: Cuatro objetos distintos de la clase Perro .

Hay tantos objetos de la clase Perro como perros en este mundo. Para crear en Java una
instancia de una clase hay que invocar un método constructor a través de la palabra clave
new.

Código 5: Ejemplo que ilustra la creación de instancias en Java, que crea cinco perros.
Perro perro1=new Perro("Firulais","Chihuahua","17/02/2007",true);
Perro perro2=new Perro("Paca","Dálmata","31/12/2009",false);
Perro perro3=new Perro("Fito","Pastor Alemán","07/08/2008",true);
Perro perro4=new Perro("Sally","French Poodle","07/08/2008",false);
Perro perro5=new Perro("Fito","French Poodle","28/02/2009",true);

Si se desea llamar un método de un objeto, se coloca el nombre del objeto, un punto y el


nombre del método.

Código 6: Ejemplo que ilustra la invocación de métodos en Java.


String s=perro4.darNombre();
System.out.println("El nombre del cuarto perro es: "+s);

Las propiedades de cada objeto son definidas mediante los valores que toman sus atributos.
Por ejemplo:
El objeto perro1 tiene nombre "Firulais", raza "Chihuahua", fecha de nacimiento
"17/02/2007", y es de género masculino.
El objeto perro2 tiene nombre "Paca", raza "Dálmata", fecha de nacimiento "31/12/2009", y
es de género femenino.
El objeto perro3 tiene nombre "Fito", raza "Pastor Alemán", fecha de nacimiento
"07/08/2008", y es de género masculino.
El objeto perro4 tiene nombre "Sally", raza "French Poodle", fecha de nacimiento
"07/08/2008" y es de género femenino.


Imágenes tomadas de http://www.morguefile.com/. morgueFile: public image archive for creatives by
creatives, © 2009-2010 MORGUEFILE.

ESTRUCTURAS DE DATOS 5
El objeto perro5 tiene nombre "Fito", raza "French Poodle", fecha de nacimiento
"28/02/2009", y es de género masculino.

Aunque todos los objetos de la clase Perro tienen nombre, raza, fecha de nacimiento y
género, dos perros distintos podrían tener distinto nombre, distinta raza, distinta fecha de
nacimiento y distinto género. En particular, perro1 tiene nombre "Firulais", y perro3 tiene un
nombre distinto ("Fito"), pero ambos son perros de género masculino.

4. ARREGLOS
Recurso como proyecto en Eclipse: Clases.zip.

Un arreglo es una secuencia de elementos del mismo tipo, que son almacenados de forma
contigua.

Gráfica 7: Arreglo que puede guardar ocho elementos.

0 1 2 3 4 5 6 7

Gráfica 8: Arreglo de caracteres que guarda los elementos M,A,N,Z,A,N,A.

M A N Z A N A
0 1 2 3 4 5 6

El acceso a los elementos de un arreglo se realiza mediante índices, que van desde 0 para la
primera posición del arreglo hasta el tamaño menos uno para la última posición del arreglo.
Por ejemplo, considere el arreglo M, A, N, Z, A, N, A. El tamaño del arreglo es siete, el elemento
de la posición 0 es una M, el elemento de la posición 1 es una A, el elemento de la posición 2
es una N, …, y el elemento de la posición 6 es una A. Observe que la primera posición del
arreglo es la 0, y que la última posición del arreglo es la 6, que coincide con el tamaño del
arreglo menos uno.

Código 9: Programa que crea un arreglo de caracteres e imprime su contenido en consola.


public class EjemploArreglos {
public static void main(String[] args) {
char[] arreglo=new char[7];
arreglo[0]='M';
arreglo[1]='A';
arreglo[2]='N';
arreglo[3]='Z';
arreglo[4]='A';
arreglo[5]='N';
arreglo[6]='A';
for (int i=0; i<arreglo.length; i++) {
char c=arreglo[i];
System.out.println("El elemento de la posición #"+i+" es: "+c);
}

ESTRUCTURAS DE DATOS 6
}
}

El tamaño de un arreglo se puede averiguar a través del atributo llamado length.

EN RESUMEN
Abstracción es el proceso mediante el cual se representa en el mundo de las ideas un conjunto de
objetos, seleccionando sólo aquellas características que interesan, excluyendo toda propiedad que no
importe.
Una clase es la abstracción de un conjunto de objetos reunidos bajo el mismo concepto. Una clase se
define mediante 1. un nombre que la identifica, 2. atributos que describen las características de los
objetos de la clase, y 3. métodos que describen el comportamiento de los objetos de la clase.
Según su función, los métodos se clasifican en:
 Métodos constructores: son los responsables de crear nuevas instancias de la clase.
 Métodos analizadores: son los responsables de permitir consultas sobre los atributos de la clase.
 Métodos modificadores: son los responsables de permitir modificaciones sobre los atributos de la
clase.
Un objeto es una instancia o particularización de una clase.
Un arreglo es una secuencia de elementos del mismo tipo, que son almacenados de forma contigua.

PARA TENER EN CUENTA


 Revise con cuidado el módulo de Programación de Computadores si necesita repasar sus conceptos
sobre el lenguaje de programación Java.
 En el módulo de Paradigmas de Programación se profundizará sobre los conceptos de la
programación orientada a objetos.

ESTRUCTURAS DE DATOS 7

Potrebbero piacerti anche