Tuesday, November 4, 2008

EN JAVA TODO ES UN OBJETO




Bueno, ahora que ya tenemos casi todas las herramientas que necesitamos para el desarrollo de aplicaciones para móviles, veamos un poco más de teoría para asegurarnos de que vamos a empezar con el pie derecho.

Lo primero que tenemos que conocer, son los OBJETOS.

¿QUE SON LOS OBJETOS ?

Como se puede ver en la imagen anterior, para poder fabricar los objetos Reloj y Lámpara, se necesita la información pregrabada llamada clases.

Las clases son las que almacenan las propiedades y métodos que contendrá un objeto.

Un objeto cambiará sus propiedades o las propiedades de otros objetos por medio de los métodos.
Los métodos que sólo pueden ejecutarse cuando el objeto existe, son los denominados dinámicos, y los métodos que pertenecen a la clase son denominados estáticos, porque pueden ser llamados sin necesidad de la existencia de un objeto.

En el ejemplo tenemos dos objetos, Reloj y Lámpara los cuales tienen métodos Cuerda e Interruptor, que son los que cambiaran el estado de las propiedades Hora e Ilumina. La clase reloj, podría tener un método estático llamado poner_en_hora, para ajustar todos los relojes fabricados.
Un programa en ejecución inicia en un método estático ya que no existen inicialmente objetos en nuestra aplicación, este método se llama main el cuál se define como:

public static void main(String[] args){
.....
}
Donde args es un vector o arreglo unidimensional que contendrá los argumentos que hayan sido pasados al comando java después de las órdenes y el nombre de la clase principal que alojará este método. El entorno de ejecución o la JVM fabricará objetos de sistema que podrán ser utilizados llamando a métodos estáticos de clases pertenecientes a la biblioteca de java.

Veamos un sencillo ejemplo, imaginemos que tenemos que crear un objeto llamado ALUMNO, todo objeto alumno debe tener las siguientes propiedades : NOMBRE, EDAD y GRADO.

Como métodos, podría tener PonNombre, PonEdad, PonGrado y DatosCompletos.

Escribamos entonces la definición de la clase para el objeto ALUMNO.

Alumno.java

public class Alumno {
String wNombre;
int wEdad;
String wGrado;

public Alumno() {
this.wNombre = "Desconocido";
this.wEdad = 0;
this.wGrado = "Desconocido";
}

public void PonNombre(String wNombre) {
this.wNombre = wNombre;
}

public void PonEdad(int wEdad) {
this.wEdad = wEdad;
}

public void PonGrado(String wGrado){
this.wGrado = wGrado;
}

public void DatosCompletos(String wNombre, int wEdad, String wGrado){
this.wNombre = wNombre;
this.wEdad = wEdad;
this.wGrado = wGrado;
}
}

Ahora que ya tenemos la definición de la clase Alumno, escribamos el código que utilice esta clase y fabrique objetos alumno.

Primero.java

public class Primero {

public Primero(){
}

public static void main(String[] args) {
Alumno miObjeto = new Alumno();

System.out.println("Primera parte....");
System.out.println("Nombre = " + miObjeto.wNombre); System.out.println("Edad = " + miObjeto.wEdad);
System.out.println("Grado = " + miObjeto.wGrado);
System.out.println("Tipo = " + miObjeto.getClass().toString());
System.out.println("\n");

miObjeto.wNombre = "Epigmenio Corrales";
miObjeto.wEdad = 45;
miObjeto.wPuesto = "Grado Doctorado";
System.out.println("Segunda parte....");
System.out.println("Nombre = " + miObjeto.wNombre);
System.out.println("Edad = " + miObjeto.wEdad);
System.out.println("Grado = " + miObjeto.wGrado);
System.out.println("\n");

miObjeto.DatosCompletos("Casildo Ortega Del Monte", 23, "Segundo Grado Maestría");
System.out.println("Tercera parte....");
System.out.println("Nombre = " + miObjeto.wNombre);
System.out.println("Edad = " + miObjeto.wEdad);
System.out.println("Grado = " + miObjeto.wGrado);
}
}

Si ejecutamos este sencillo código que hemos ejecutado, obtendremos un resultado en pantalla como el que sigue:

Primera parte....
Nombre = Desconocido
Edad = 0
Grado = Desconocido
Tipo = class Alumno

Segunda parte....
Nombre = Epigmenio Corrales
Edad = 45
Grado = Grado Doctorado

Tercera parte....
Nombre = Casildo Ortega Del Monte
Edad = 23
Grado = Segundo Grado Maestría

Muy bien, después de este breve y pequeño recordatorio de Java, la definición de Clases y la creación de Objetos; estamos listos para abordar de lleno el tema del J2ME.

No comments: