Primeros pasos con Java, clases

Share if you like...Share on Facebook0Tweet about this on TwitterShare on Google+0Share on LinkedIn0

Como ya hemos comentado antes en Metodología de programación I, las clases son la médula espinal de cualquier programa en la programación orientada a objetos.

Una clase es el producto de enfocar la programación a los datos más que a las funciones. Por tanto una clase es una colección de datos y además para operar con ellos una serie de funciones propias de la clase. Veamos por ejemplo la clase “Fichas”:

public class Fichas {
   	String color;
   	public Fichas(String c){color=c;}
   	public String dameColor(){return(color);}
}

Su único dato es “el color” y la única operación que permite es saber el color de la ficha en cualquier momento. Eso permite un acceso restrictivo a los datos según la función de los mismos. En este caso la clase es así basándose en la vida misma: No creo que nadie haya cambiado el color de una ficha jugando a las “cuatro en raya” y en caso positivo no tendría muy buenas intenciones al hacerlo.

Además de este método básico de protección de los datos, Java permite algunos más que vemos ahora mismo.

Cuando declaramos una clase lo primero que ponemos es la cabecera:

public class Fichas { (cuerpo de la clase) }

La primera palabra nos proporciona la posibilidad de dar permisos de accesos a nuestra clase, los permisos son los siguientes, el significado ya explicado en Primeros pasos con Java, ámbito:

  • “Public”
  • “Package”
class Fichas {(Cuerpo de la clase)}

Es lo mismo que si escribimos:

package class Fichas {(Cuerpo de la clase)}

Las clases “package” ( que podemos entender como las que no son “public” ) son accesibles solo desde su propio package, ya que en Java éste es el modificador de ámbito por defecto.

En cuanto al nombre de la clase consideraremos varias cosas. Debe de obedecer al convenio de nombres de Java y coincidir con el nombre del fichero “.java” en el que se guardará la clase.

Lo normal es que cada clase vaya incluida en un único fichero pero claro está, nos puede interesar por algún motivo meter varias clases en un único fichero. En este caso solo puede haber una clase public que es la que dará el nombre a dicho fichero. En caso de que no hubiese una clase public el compilador entenderá que la clase “principal” de ese fichero es la que concuerda con el nombre del mismo, por lo que evidentemente dos clases con un mismo nombre no son permitidas en un mismo fichero.

Por último para explicar la estructura de una clase explicaré los elementos habituales en la definición de su cuerpo.

Primero se suelen declarar, al menos, las variables internas de esa clase y posteriormente se definen los constructores y los métodos que dispondrá la clase. Lo entenderemos mejor más adelante.

En la definición de constructores y métodos tenemos que tener en cuenta un nuevo concepto de la programación orientada a objetos, la sobrecarga. La sobrecarga consiste en poder tener varios métodos o constructores con el mismo nombre dentro de una misma clase y que no hagan las mismas cosas.

Esto se consigue de una manera muy sencilla, se diferencian entre ellos mediante el número y tipo de parámetros que reciben. Veamos un ejemplo:

// Tenemos dos métodos que pueden por ejemplo obtener el área de una figura geométrica en concreto,
// podrían ser:

float obtenerAreaCirculo(Circulo ci){
   	// Instrucciones
}

float obtenerAreaCuadrado(Cuadrado cu){
   	// Instrucciones
}

// en Java esto se puede abreviar teniendo dos métodos sobrecargados, por ejemplo:

float obtenerArea(Circulo ci){
   	// Instrucciones
}

float obtenerArea(Cuadrado cu){
   	// Instrucciones
}

// A la hora de ejecutar el método obtenerArea se utilizará el que corresponda al parámetro que se
// le pase por cabecera

Fuente:desarrolloweb.com

Share if you like...Share on Facebook0Tweet about this on TwitterShare on Google+0Share on LinkedIn0
The following two tabs change content below.
Reborn as IT Developer. Desarrollador Android y fundador de Proyecto Simio. "En realidad, yo no puedo enseñar nada a nadie, sólo puedo hacerles pensar." - Sócrates.

Deja un comentario