sábado, 21 de enero de 2012

Tutorial Java 2 - Objetos

Java es un lenguaje de programación orientado a objetos, los objetos podríamos definirlos como paquetes de datos...y de momento llega, porque he dicho que serían tutoriales concisos así que empezaremos con la parte práctica y espero que desde ahí se vaya entendiendo el funcionamiento de los mismos:

Creamos un nuevo proyecto, pero esta vez, aparte de crear una clase principal, crearemos otra más sin la opción "main" marcada y la llamaremos por ejemplo "ordenador".

Código de clase principal:


import java.util.Scanner;
public class programa1 {
public static void main(String[] args) {

ordenador cpu;     /*Creamos una objeto "cpu" de tipo "ordenador" que es nuestra clase nueva,  esto quiere decir que la variable cpu podrá utilizar los métodos de la clase ordenador.*/

cpu = new ordenador("string", "string", 0, 0);  /*cpu será un nuevo objeto de tipo ordenador, además inicializamos sus variables. Esto lo entenderéis mejor cuando veamos la clase ordenador.*/


Scanner entrada = new Scanner(System.in);
System.out.println("Introduzca tipo de procesador:");
String procesador = entrada.nextLine();
System.out.println("Introduzca frecuencia en GHz:");
int frecuencia = entrada.nextInt(); /*Para leer el siguiente entero introducido por teclado.*/
System.out.println("Introduzca tipo de gráfica:");
entrada.next(); /*Para mover el puntero de Scanner y que lea la siguiente instrucción correctamente.*/
String grafica = entrada.nextLine();
System.out.println("Introduzca cantidad de memoria en Mb:");
int memoria = entrada.nextInt();

cpu.setProcesador(procesador); //mandamos el procesador al objeto cpu.
cpu.setFrecuencia(frecuencia); //mandamos la frecuencia al objeto cpu.
cpu.setGrafica(grafica); //mandamos la gráfica al objeto cpu.
cpu.setMemoria(memoria); //mandamos la memoria al objeto cpu.


System.out.println("Tiene un procesador de tipo " + cpu.getProcesador() + " a " + cpu.getFrecuencia() + " GHz");
System.out.println("Tiene una gráfica de tipo " + cpu.getGrafica() + "con " + cpu.getMemoria() + " Mb"); //Si en vez de usar set, usamos get, recibiremos la información
}

}

Clase ordenador:


public class ordenador {

private String procesador, grafica; //Cadenas "private" solo accesibles desde los métodos de esta clase
private int frecuencia, memoria;

public ordenador(String proce, String gra, int frec, int me) /*Constructor del objeto, indicamos las variables que llegarán desde la clase principal.*/
{
procesador=proce;  //Guardamos las variables en la clase.
grafica=gra;
frecuencia=frec;
memoria=me;
}
}

Y ahora para crear los métodos de "get" y "set" podemos hacer lo siguiente:  ir a "Source" y "Generate Getters and Setters" y marcamos todas las variables con las que querremos manejarnos desde la clase principal, y le damos a "ok", el clipse automaticamente nos generará el resto del código y en total nos debería quedar esto:

Clase ordenador:


public class ordenador {

private String procesador, grafica;
private int frecuencia, memoria;

public ordenador(String proce, String gra, int frec, int me)
{
procesador=proce;
grafica=gra;
frecuencia=frec;
memoria=me;
}

public String getProcesador() {
return procesador;  //devuelve la variable procesador a la clase principal
}

public void setProcesador(String procesador) {
this.procesador = procesador; /*this indica cual es el procesador de la clase, el que queremos "rellenar".*/
}

public String getGrafica() {
return grafica;
}

public void setGrafica(String grafica) {
this.grafica = grafica;
}

public int getFrecuencia() {
return frecuencia;
}

public void setFrecuencia(int frecuencia) {
this.frecuencia = frecuencia;
}

public int getMemoria() {
return memoria;
}

public void setMemoria(int memoria) {
this.memoria = memoria;
}

}



Ahora guardais ambas clases y podeis darle a "Run"





No hay comentarios:

Publicar un comentario