Sobrecarga de Metodos parte2(Ayuda)

Iniciado por Rijhording, 3 Mayo 2010, 15:54 PM

0 Miembros y 1 Visitante están viendo este tema.

Rijhording

Un Alumno se crea con una edad, la cual se puede cambiar con su respectivo metodo set, la edad es de tipo int,la edad se puede cambiar dando la edad en años, a veces ingresada como entero otras como flotante.
Este es mi codigo
Código (java) [Seleccionar]

import java.util.Scanner;

public class Main
{

    public static void main(String[] args)
    {
    Scanner leer=new Scanner(System.in);
    int edad;
   
    System.out.println("Ingrese Edad:");
    edad=leer.nextInt();
   
    Alumno al=new Alumno(edad);
   
    System.out.println("**Datos del Alumno**");
    System.out.println(al.getEdad());
   
    System.out.println("***Cambiar Edad***");
   
    System.out.print("Ingrese Edad a Cambiar");
    int edadnew=leer.nextInt();
    al.setEdad(edadnew);
         
    System.out.println("**Edad Cambiada**");   
    System.out.println(al.getEdad());
     
    }

}

public class Alumno
{
private int edad;

   
    public Alumno(int edad)
    {
        this.edad = edad;
    }

    public int getEdad() {
        return edad;
    }

    public void setEdad(int edad) {
        this.edad = edad;
/*aca debe de haber un metodo con float y hacer un cast pero no tengo idea de como lo hago necesito su ayuda gracias de antemano
*/
  }

   
}

Leyer

Código (java) [Seleccionar]
int i=0;
public void set(int i){}
public void set(float i){
i=(int) i;
}


;)

Rijhording

en mi clase Alumno pondria esto
Código (java) [Seleccionar]

private int i=0;
public void set(int i){}
public void set(float i){
i=(int) i;
}
/*Pero como hago el cambio para float desde mi main..?no entiendo este parte de codigo */

Leyer

nooo, eso es solo un ejemplo para que lo agas pero bueno.

Código (java) [Seleccionar]
  public void setEdad(int edad) {
    this.edad = edad;
  }
  public void setEdad(float edad) {
    this.edad = (int)edad;       
  }

Rijhording

si me percate de eso man pero le e puesto
Código (java) [Seleccionar]

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

    public void setEdad(float edad)
    {
      this.edad= int(edad);//en esta parte me sale mal me subraya una linea roja 
}

Leyer

Lo has colocado al reves :xD

es this.edad = (int)edad;

Rijhording

 :P jajajaja gracias man no me habia dado cuenta en ese detalle estaba como loco viendo cual era el horror o error que estaba cometiendo saludos y gracias de nuevo