Você está na página 1de 6

TALLER POO

Clases y objetos

Una clase es un molde que sirve para crear objetos, el molde consta de atributos que permiten
describir como va a ser el objeto y unos mtodos que son las acciones que hacen que un objeto
cambie o se consulten sus atributos. Haciendo una analoga con la vida real podemos crear un
molde para carro, y tener los atributos de color, velocidad y numero de pasajeros. Las acciones
(mtodos) que permiten que un carro cambie o consulte sus atributos serian: acelerar, frenar y
mirar tacometro para cambiar o consultar la velocidad. Pintar y mirar color para el atributo color y
por ultimo los mtodos de subir pasajero, bajar pasajero y consultar cantidad de pasajeros.

Las clases en java se crean de la siguiente forma

1- Los atritubutos deben ser privados para que solo puedan ser modificados o consultados a
travs de mtodos
2- El constructor de un objeto es para iniciar los atributos cuando el objeto es creado
3- Para tener control total de un objeto el molde o clase debe tener mtodos que permiten
modificar o consultar cada una de las variables de clase.
4- Los comentarios de una lnea se hacen con // y de varias lneas con /* */

public class Carro {


private int velocidad;
private String color;
private int numpasajeros;

public Carro() {
velocidad=0;
color="gris";
numpasajeros=0;
}

public int mirarTacometro() {


return velocidad;
}

public void Acelerar() {


this.velocidad = velocidad+5;
}

public void Frenar() {


this.velocidad = velocidad-5;
if (velocidad<0)
velocidad=0;
}

public String mirarColor() {


return color;
}

public void Pintar(String color) {


this.color = color;
}
public int consultarNumPasajeros() {
return numpasajeros;
}

public void Subirpasajero() {


this.numpasajeros = numpasajeros+1;
}

public void Bajarpasajero() {


this.numpasajeros = numpasajeros-1;
if (numpasajeros<0)
numpasajeros=0;
}

El cdigo anterior es el molde para crear objetos

Sobrecarga de mtodos: es la creacin de varios mtodos con el mismo nombre pero


diferencindose en los parmetros, sea en cantidad o tipo. Ejemplo

Se puede tener el mtodo Acelerar() y Acelerar(int incremento). Uno tiene un parmetro y el otro
no, por lo cual se entienden como dos mtodos totalmente diferentes. Los constructores se
puden sobrecargar tambin

Mtodos Getter y Setter: Con el fin de programar mas rpidamente y generar cdigo
automticamente los IDEs usan los mtodos getter y setter para consultar y dar valor a cada
atributo.

Modificadores de Acceso: El modificador private en Java es el ms restrictivo de todos,


basicamente cualquier elemento de una clase que sea privado puede ser accedido nicamente por
la misma clase. El modificador de acceso protected nos permite acceso a los componentes con
dicho modificador desde la misma clase, clases del mismo paquete y clases que hereden de ella. El
modificador de acceso public es el ms permisivo de todos, bsicamente public es lo contrario a
private en todos los aspectos (lgicamente), esto quiere decir que si un componente de una clase
es public, tendremos acceso a l desde cualquier clase o instancia sin importar el paquete o
procedencia de sta.

Relaciones entre clases: Las relaciones existentes entre las diferentes clases nos indican como se
comunican los objetos de esas clases entre si. Los tipos de relaciones son:
La asociacin es una relacin que indica que existen enlaces entre los objetos de las clases
Relacionadas.

La agregacin es un tipo de asociacin que expresa la relacin "parte de", esto es, una
relacin entre el todo y sus partes, y se representa agregando un diamante vaco en el
extremo que corresponde al todo

La composicin, que representa una relacin ms fuerte entre el todo y sus partes, en la cual las
partes slo tienen sentido como parte del todo, y son construidas y destruidas junto con el todo

La generalizacin, especificacin o herencia, es una relacin entre un elemento ms general y un


elemento ms especfico y sirve para representar la herencia entre clases. El smbolo utilizado es
una lnea slida entre las clases relacionadas, con un tringulo vaco en el extremo que
corresponde a la clase ms general.

Ejemplos

ASOCIACION

AGREGACION Y COMPOSICION

HERENCIA
El objeto ArrayList(): Un ArrayList es un array dinmico. No tiene restricciones de capacidad. Su
tamao se ajusta de forma dinmica y sirve para almacenar objetos, nmeros, cadenas, etc

De forma general un ArrayList en Java se crea de la siguiente forma:

ArrayList nombreArray = new ArrayList();

Esta instruccin crea el ArrayList nombreArray vaco.

Un arrayList declarado as puede contener objetos de cualquier tipo. Por ejemplo:

ArrayList a = new ArrayList();


a.add("Lenguaje");
a.add(3);
a.add('a');
a.add(23.5);
Los elementos del arrayList a son:
Lenguaje 2 a 23.5

Es decir, un ArrayList puede contener objetos de tipos distintos.

Un array al que se le pueden asignar elementos de distinto puede tener alguna complicacin a la
hora de trabajar con l. Por eso, una alternativa a esta declaracin es indicar el tipo de objetos que
contiene. En este caso, el array solo podr contener objetos de ese tipo.

ArrayList<tipo> nombreArray = new ArrayList<tipo>();

Por ejemplo:
ArrayList<Integer> numeros = new ArrayList<Integer>();
Crea el array numeros de enteros.

METODOS DEL ARRAYLIST


// Declaracin de un ArrayList de "String". Puede ser de cualquier otro Elemento
u Objeto (float, Boolean, Object, ...)

ArrayList<String> nombreArrayList = new ArrayList<String>();

// Aade el elemento al ArrayList

nombreArrayList.add("Elemento");

// Aade el elemento al ArrayList en la posicin 'n'

nombreArrayList.add(n, "Elemento 2");

// Devuelve el numero de elementos del ArrayList

nombreArrayList.size();

// Devuelve el elemento que esta en la posicin '2' del ArrayList

nombreArrayList.get(2);

// Comprueba se existe del elemento ('Elemento') que se le pasa como parametro

nombreArrayList.contains("Elemento");

// Devuelve la posicin de la primera ocurrencia ('Elemento') en el ArrayList

nombreArrayList.indexOf("Elemento");

// Devuelve la posicin de la ltima ocurrencia ('Elemento') en el ArrayList

nombreArrayList.lastIndexOf("Elemento");

// Borra el elemento de la posicin '5' del ArrayList

nombreArrayList.remove(5);

// Borra la primera ocurrencia del 'Elemento' que se le pasa como parametro.

nombreArrayList.remove("Elemento");

//Borra todos los elementos de ArrayList

nombreArrayList.clear();

// Devuelve True si el ArrayList esta vacio. Sino Devuelve False

nombreArrayList.isEmpty();

// Copiar un ArrayList

ArrayList arrayListCopia = (ArrayList) nombreArrayList.clone();

// Pasa el ArrayList a un Array

Object[] array = nombreArrayList.toArray();


TALLER

Crear las clases para las siguientes tipos abstractos de datos

Pila
Cola
Lista
Vehiculo, Chofer, Bus
Sala de computadores, Computadores
Clinica, consultorios
Enciclopedia, Libros
Clinica, Sucursal, Consultoriso, Medicos y pacientes
Universidad, Facultad, Carrera, Materias, Inscripciones, Estudiantes
Proyecto, Actividades, Responsables, Recursos

Desarrollar un programa que permita:

Mantener una coleccin de figuras geomtricas que incluya: rectngulos, crculos, tringulos y
polgonos (la posicin y dimensiones de las figuras debe estar claramente definida).
Calcular la suma del rea y permetro de todas las figuras.
Transladar, Aumentar y Disminuir todas las figuras usando un (x, y) dado igual para todas las
figuras.

Todos las clases necesarias, as como una clase principal que pruebe toda la funcionalidad, deben
estar incluidas.

Você também pode gostar