miércoles, 6 de mayo de 2009

Clases

Una clase es una agrupación de datos (variables o campos) y de funciones (métodos) que operan sobre esos datos.

Un objeto (instance) es un ejemplar concreto de una clase.
Las cartacteristicas de una clase son las siguientes:

1) Todas las variables y funciones de Java deben pertenecer a una clase.
2) Si una clase deriva de otra (extends), hereda todas sus variables y métodos.
3) Java tiene una jerarquía de clases estándar de la que pueden derivar las clases que crean los usuarios.
4) En Java no hay herencia múltiple.
5) En un fichero se pueden definir varias clases, pero en un fichero no puede haber más que una clase public.
6) Si una clase contenida en un fichero no es public, no es necesario que el fichero se llame como la clase.
7) Los métodos de una clase pueden referirse de modo global al objeto de esa clase al que se aplican por medio de la referencia this.
8) Las clases se pueden agrupar en packages, introduciendo una línea al comienzo del fichero (package packageName;).

Tipos de Clases

Abstract.- Una clase abstract tiene al menos un método abstracto. Una clase abstracta no se instancia, sino que se utiliza como clase base para la herencia.

Final.- Una clase final se declara como la clase que termina una cadena de herencia. No se puede heredar de una clase final. Por ejemplo, la clase Math es una clase final.

Public.- Las clases public son accesibles desde otras clases, bien sea directamente o por herencia. Son accesibles dentro del mismo paquete en el que se han declarado. Para acceder desde otros paquetes, primero tienen que ser importadas.

Synchronizable.- Este modificador especifica que todos los métodos definidos en la clase son sincronizados, es decir, que no se puede acceder al mismo tiempo a ellos desde distintos threads; el sistema se encarga de colocar los flags necesarios para evitarlo. Este mecanismo hace que desde threads diferentes se puedan modificar las mismas variables sin que haya problemas de que se sobreescriban.

0 comentarios: