enero 21, 2013

Estructura básica de un programa orientado a objetos

Al utilizar POO hacemos que los problemas sean mas sencillos de resolver, ya que lo dividimos en partes. Ahora estas divisiones (por así llamarlos) son los objetos, pero no podemos utilizarlos sin antes haber creado la clase y así poder hacer la instancia de clase. Bien para aclarar esto haremos el muy utilizado ejemplo de una persona. Primero que nada debemos pensar el nombre que llevara la clase, en este caso no hay necesidad de tanto pensarle ya que "Persona" es mas que claro. Ahora tenemos que identificar todos los atributos de una persona, los cuales pueden ser: la edad, estatura y color de pelo.
Solo usaremos esas, bien ya que tenemos definidos los atributos de la clase tendremos que asignarle el tipo de dato mas conveniente, en el caso de la edad sería de tipo int, la estatura sería double y el color de pelo sería String.



Ya bien definidas nuestras variables de clase, continuamos a programar. El programa tendrá una estructura, que es la siguiente:
          1) Declaración de variables.
          2)Constructor.
          3) Métodos.

Entonces declaramos las variables de clase, dependiendo el caso pueden llevar la palabra reservada: public, protected o private.

private int edad;
private double estatura;
private String colorPelo;
El constructor recibirá de parámetros la edad, la estatura y el color de pelo. Y utilizando la palabra reservada "this" (para hacer referencia a la variable de clase) asignaremos a cada variable de clase el parámetro correspondiente.
public Persona(int edad, double estatura, String colorPelo)
{
  this.edad = edad;
  this.estatura = estatura;
  this.colorPelo = colorPelo;
}
Algo muy importante que siempre se tiene que tener en cuenta, son los métodos para actualizar y obtener nuestras variables de clase, estos son los llamados getters y setters. Los métodos que lleven la palabra "get" es para retornar lo que tiene la variable de clase y los métodos que llevan la palabra "set" es para actualizar la variable de clase.
public String getColorPelo() 
{
  return colorPelo;
}

public void setColorPelo(String colorPelo) 
{
  this.colorPelo = colorPelo;
}

public int getEdad() 
{
  return edad;
}

public void setEdad(int edad) 
{
  this.edad = edad;
}

public double getEstatura() 
{
  return estatura;
}

public void setEstatura(double estatura) 
{
  this.estatura = estatura;
} 
El programa completo quedaría de la siguiente forma:
/**
 * Archivo: Persona.java
 * @author Bello Cerecero
 * @since 25/01/2012
 */
public class Persona 
{
    private String colorPelo;
    private int edad;
    private double estatura;
    
    public Persona(String colorPelo, int edad, double estatura)
    {
      this.colorPelo = colorPelo;
      this.edad = edad;
      this.estatura = estatura;
    }

    public String getColorPelo() 
    {
        return colorPelo;
    }

    public void setColorPelo(String colorPelo) 
    {
        this.colorPelo = colorPelo;
    }

    public int getEdad() 
    {
        return edad;
    }

    public void setEdad(int edad) 
    {
        this.edad = edad;
    }

    public double getEstatura() 
    {
        return estatura;
    }

    public void setEstatura(double estatura) 
    {
        this.estatura = estatura;
    } 
}

No hay comentarios.:

Publicar un comentario