|
PROGRAMACION EN JAVA |
|
Al hablar de M�todos en Java, estamos haciendo referencia a los procedimientos y funciones que se presentan en Pascal, C, y otros lenguajes. Una de las principales caracter�sticas que diferencia a Java con otros lenguajes, es que todos los m�todos deben formar parte de una clase. En Java nosotros podremos encontrar una extensa librer�a con un sin n�mero de m�todos para todo prop�sito, sin embargo tambi�n tenemos la posibilidad de crear nuestros propios m�todos. Como sabemos la creaci�n de m�todos nos permite mayor facilidad de abstracci�n, mejor legibilidad del c�digo fuente y por que no, ahorro significativo de l�neas de c�digo. Todas estas caracter�sticas demuestran la necesidad de aprender a crear nuestros propios m�todos, comprender y utilizar los m�todos existentes.
Todas las acciones de los programas Java se colocan dentro del bloque de una clase o un objeto. Todos los métodos se definen dentro del bloque de la clase, Java no soporta funciones o variables globales. Esto puede despistar a los programadores de C++, que pueden definir métodos fuera del bloque de la clase, pero esta posibilidad es más un intento de no separarse mucho y ser compatible con C, que un buen diseño orientado a objetos. Así pues, el esqueleto de cualquier aplicación Java se basa en la definición de una clase.
Todos los datos básicos, como los enteros, se deben declarar
en las clases antes de hacer uso de ellos. En C la unidad fundamental
son los ficheros con código fuente, en Java son las clases.
De hecho son pocas las sentencias que se pueden colocar fuera
del bloque de una clase. La palabra clave import (equivalente
al #include) puede colocarse al principio de un fichero,
fuera del bloque de la clase. Sin embargo, el compilador reemplazará
esa sentencia con el contenido del fichero que se indique, que
consistirá, como es de suponer, en más clases.
Hasta ahora sólo se ha utilizado la palabra clave public para calificar el nombre de las clases que hemos visto, pero hay tres modificadores más. Los tipos de clases que podemos definir son:
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.
|