Professional Documents
Culture Documents
1 DAW
UT 5: DESARROLLO DE CLASES
1. CLASES ........................................................................ 2
1.1
CONCEPTO DE CLASE................................................................................................. 2
1.2
1.2.1
2. ATRIBUTOS ................................................................... 4
2.1
2.2
2.2.1
MODIFICADORES DE UN ATRIBUTO....................................................... 4
3. METODOS ..................................................................... 6
3.1
3.2
3.2.1
3.3
CONSTRUCTORES ....................................................................................................... 8
3.3.1
3.4
Constructores de Copia.................................................................................... 8
Programacin
1 DAW
1. CLASES
1.1
CONCEPTO DE CLASE
1.2
Programacin
1 DAW
Modificador final. Indica que no podrs crear clases que hereden de ella. Los
modificadores final y abstract son excluyentes (slo se puede utilizar uno de
ellos).
Si no se especifica modificador, la clase slo podr ser utilizada desde clases que
estn en el mismo paquete.
Programacin
1 DAW
2. ATRIBUTOS
2.1 CONCEPTO DE ATRIBUTO
Atributos son aquellas caractersticas propias de la clase y de los objetos que se
crearn con ese molde.
2.2
DECLARACIN DE ATRIBUTOS
en
maysculas.
Por
ejemplo:
primerValor,
valor,
puertaIzquierda,
2.2.1
MODIFICADORES DE UN ATRIBUTO
Programacin
1 DAW
Modificadores de contenido.
No son excluyentes. Pueden aparecer varios a la vez.
Modificador static. Hace que el atributo sea comn para todos los objetos de una
misma clase. Es decir, toda la clase compartir ese mismo atributo con el mismo
valor, as que puede
existencia del objeto, sino de la propia clase y por tanto slo habr uno,
independientemente del nmero de objetos que se creen.
Uno de los ejemplos ms habituales (y sencillos) de atributos estticos o de clase
es el de un contador que indica el nmero de objetos de esa clase que se han ido
creando.
Modificador final. Indica que el atributo es una constante y su valor no podr ser
modificado a lo largo de la vida del objeto. Por convenio, el nombre de los atributos
constantes (final) se escribe con todas las letras en maysculas.
Programacin
1 DAW
3. METODOS
3.1
CONCEPTO DE MTODO
Los mtodos en una clase recogen cules son las acciones que van a poder realizar
los objetos o realizarse sobre ellos.
3.2
DECLARACIN DE MTODOS
<tipo>
<nombreMtodo>
[<lista_parametros>]
[throws
<lista_excepciones>]
Esquema ms preciso:
//Cabecera de mtodo.
[private | protected | public] [static] [abstract] [final] [native] [synchronized]
<tipo> <nombreMtodo> ( [<lista_parametros>] ) [throws <lista_excepciones>]
Por tanto la declaracin de un mtodo puede incluir los siguientes elementos:
Modificadores (que se explican en el prximo subapartado)
El tipo devuelto (o tipo de retorno), que consiste en el tipo de dato (primitivo o
referencia) que el mtodo devuelve tras ser ejecutado. Si se elige void como tipo
devuelto, el mtodo no devolver ningn valor.
El nombre del mtodo, por convenio, un verbo en minscula o bien un nombre
formado por varias palabras que comience por un verbo en minscula, seguido por
adjetivos, nombres, etc. los cuales s aparecern en maysculas.
Una lista de parmetros separados por comas y entre parntesis donde cada
parmetro debe ir precedido por su tipo. Si el mtodo no tiene parmetros la lista
estar vaca y nicamente aparecern los parntesis.
Es posible utilizar una construccin especial llamada varargs (argumentos
variables) que permite que un mtodo pueda tener un nmero variable de
parmetros. Para utilizar este mecanismo se colocan unos puntos suspensivos (tres
puntos: "...") despus del tipo del cual se puede tener una lista variable de
Programacin
1 DAW
MODIFICADORES DE UN MTODO
Modificadores de acceso. Son los mismos que en el caso de los atributos (por
omisin o de paquete, public, private y protected) y tienen el mismo cometido
(acceso al mtodo slo por parte de clases del mismo paquete, o por cualquier
parte del programa, o slo para la propia clase, o tambin para las subclases).
Modificadores de contenido. Son tambin los mismos que en el caso de los
atributos (static y final).
Un mtodo final es un mtodo que no permite ser sobrescrito por las clases
descendientes de la clase a la que pertenece el mtodo.
Otros modificadores: abstract, native, synchronized.
El modificador native es utilizado para sealar que un mtodo ha sido
implementado en cdigo C o C++. Se indica la cabecera del mtodo, pues no tiene
cuerpo escrito en Java.
Un mtodo abstract es un mtodo que no tiene implementacin (el cuerpo est
vaco). La implementacin ser realizada en las clases descendientes. Un mtodo
slo puede ser declarado como abstract si se encuentra dentro de una clase
abstract.
Programacin
1 DAW
this.x= x;
this.x= p.obtenerX();
this.y= y;
this.y= p.obtenerY();
Programacin
3.4
1 DAW
DESTRUCCIN DE OBJETOS.
Cuando un objeto deja de ser utilizado, los recursos usados por l (memoria,
acceso a archivos, conexiones con bases de datos, etc.) deberan de ser liberados
para que puedan volver a ser utilizados por otros procesos (mecanismo de
destruccin del objeto).
De la destruccin se encarga un proceso del entorno de ejecucin conocido como
recolector
de
basura
(garbage
collector).
Este
proceso
va
buscando
peridicamente objetos que ya no son referenciados (no hay ninguna variable que
haga referencia a ellos) y los marca para ser eliminados. Posteriormente los ir
eliminando de la memoria cuando lo considere oportuno (en funcin de la carga del
sistema, los recursos disponibles, etc.).
En realidad en Java tambin es posible implementar el mtodo destructor de una
clase, se trata del mtodo finalize().Si necesitas implementar un destructor
(normalmente no ser necesario), debes tener en cuenta que:
El nombre del mtodo destructor debe ser finalize ().
No puede recibir parmetros.
Slo puede haber un destructor en una clase. No es posible la sobrecarga dado que
no tiene parmetros.
No puede devolver ningn valor. Debe ser de tipo void.
Este mtodo finalize es llamado por el recolector de basura cuando va a destruir el
objeto. Si ese mtodo no existe, se ejecutar un destructor por defecto (el
mtodo finalize que contiene la clase Object, de la cual heredan todas las clases en
Java) que liberar la memoria ocupada por el objeto. Se recomienda portanto que
si un objeto utiliza determinados recursos de los cuales no tienes garanta que el
entorno de ejecucin los vaya a liberar (cerrar archivos, cerrar conexiones de red,
cerrar conexiones con bases de datos, etc.), implementes explcitamente un
mtodo finalize en tus clases. Si el nico recurso que utiliza tu clase es la memoria
necesaria para albergar sus atributos, eso s ser liberado sin problemas.
System.runFinalization ();
Este mtodo se encarga de llamar a todos los mtodos finalize de todos los
objetos marcados por el recolector de basura para ser destruidos.
Programacin
4
1 DAW
INTRODUCCIN A LA HERENCIA
4.1
...
...
10