Inicio
Software
Programación
HTML Programación - PHP (ini) Programación - PHP POO Programación - PHP / HTML SQL Java
Hardware
Desarrollos
Quién soy Mapa del sitio

Programación - Java 10

Imprimir
Categoría: Java
Escrito por Ch4rl1X Visitas: 597

Esta vez vamos a ver como pasar parámetros a constructores, utilizarlos en nuestros métodos para finalmente obtejer un resultado, lo primero que hacemos es re-armar las variables de nuestro proyecto anterior definiéndolas como:

 

A estas le agregamos el modificador de acceso "private" que nos servirá para definir el acceso desde nuestras clases en nuestro paquete. Fijarse que al precio ya le asignamos una base de 1000. Luego creamos el constructor, la manera de crearlo es generar el tipo de dato y nombre de la variable a utilizar, este nombre de variable puede ser cualquiera:

Generamos los getters, que van a devolver los valores de nuestras variables:

Luego un setter, que como sabemos no devuelve nada (void) y recibe el parámetro que le pasemos para multiplicarlo por el valor de la variable que le vamos a pasar.

A continuación el nombre de nuestra clase TelefonosMoviles:

package charlesWeb_poo1;

public class TelefonosMoviles {

	private String color;
	private double alto;
	private double ancho; 
	private double peso;
	private int memoria;
	private String camara;
	private int microprocesador;
	private double precio = 1000;
	
	/*Creamos el constructor de la clase TelefonosMoviles, recordar que el 
	 * constructor de una clase se da alta llamando el método igual que la clase*/
	
	public TelefonosMoviles(double altoMovil, double anchoMovil, double pesoMovil, int memoriaMovil, String camaraMovil, int microprocesadorMovil) {
	/*Aquí definimos las variables a utilizar en el constructor*/
		
		/*Le pasamos al constructor que cada una da las variables es igual a las variables de la declaración inicial*/
		alto = altoMovil;
		ancho = anchoMovil;
		peso = pesoMovil; 
		memoria = memoriaMovil;
		camara = camaraMovil; 
		microprocesador = microprocesadorMovil;

	}
	
	/*Generamos el método setter*/
	/*Los métodos setter "setean" el valor de las variables
	 * por lo que no devuelven nada*/
	public void generaColor(String colorCelu) {
		color = colorCelu;
	}
	public double reciboAlto() {//Getter
		return alto;
	}
	public double reciboAncho() {//Getter
		return ancho;
	}
	public double reciboPeso() {//Getter
		return peso;
	}
	public int reciboMemoria() {//Getter
		return memoria;
	}
	public String reciboCamara() {//Getter
		return camara;
	}
	public int reciboMicroprocesador() {//Getter
		return microprocesador;
	}
	public double aumentaPrecio() {//Getter
		return precio;
	}
	
	/*Setter para incremeto de ram*/
	public void aumentaPrecio(int porcAumento) {
		double aumentoPrecio = precio * porcAumento / 100;
		
		precio += aumentoPrecio;
	}
	
	/*Setter para el incremento de núcleos*/
	
	
	
	/*Generando el metodo Getter*/
	/*El método Getter, devuelve valor y Java pide que siempre tenga la instrucción return*/
	public String devuelveColor() {
		return "El color del celular es: " + color;
	}
	
	
	
}

Vamos al main para pasar los valores e imprimir los resultados.

Para pasar los valores a nuestro constructor, como vimos en el post anterior, se instancia la clase en una variable, luego se escribe la palabra new para llamar nuevamente a la clase y pasarle los valores. Teníamos el método aumenta precio que devolvía el proceso que se le realizaba a precio, que era agarrar el precio base y generar el porcentaje en base al valor entero del parámetro que le pasemos.

¿Como vemos los resultados?

Imprmiendo a pantalla y llamando a nuestra clase instanciada con movil.nombreMetodo (getter):

 

Esto está muy bien para cuando tenes un solo valor, luego vamos a ver como guardar estos valores en un array para recorrerlos con un for.

Código del main:

/*Al estar dentro del mismo paquete se heredan todas las clases y métodos*/
package charlesWeb_poo1;

public class DefinoMovil {

	public static void main(String[] args) {
		/*Instanciamos la clase en una variable movil*/
		/*Agregamos los parámetros al constructor*/
		TelefonosMoviles movil = new TelefonosMoviles(15, 12, 110, 1000, "Si", 2);
		
		movil.generaColor("Negro");
		
		/*Porcentaje del precio a aumentar*/
		movil.aumentaPrecio(1);
		
		
		
		//System.out.println(movil.devuelveColor());
		
		/*Generamos el detalle de los parámetros pasados al constructor en pantalla*/
		System.out.println("El movil creado es de un alto: " + movil.reciboAlto() + " cm y un ancho: " + movil.reciboAncho() + 
				" cm tiene un peso de " + movil.reciboPeso() + " grs " + " y tiene " + movil.reciboMemoria() + "mb de RAM. Especificaciones"
						+ ": Camara: " + movil.reciboCamara() + " Núcleos del procesador: " + movil.reciboMicroprocesador() + " Y el precio"
								+ " es de : " + movil.aumentaPrecio());

	}

}

Saludos, Ch4rl1X!