Estoy teniendo problemas con la asignacion parece en un metodo dentro de esta clase. cuando hice el debug me dice q la "aux" contiene estos "primerasClases.Fraccion@4a5ab2", osea cualquier cosa.
CLASE FRACCION
package primerasClases;
public class Fraccion {
private int num;
private int den;
// constructor
public Fraccion (int a, int b){
num=a;
den=b;
}
//mostrar suma fraccion
public void muestraSumafraccion(){
System.out.println("La suma de la fraccion es: "+Fraccion.fraccionSumar(null, null));
}
//muestra fraccion por pantalla
public void fraccionMostrar(){
System.out.println(num+"/"+den);
}
//obtiene el denominador de la fraccion
public int fraccionDen(){
return den;
}
//suma 2 fracciones, recibe una de ellas como parametro y retorna la
// fraccion resultado
public static Fraccion fraccionSumar(Fraccion f1, Fraccion f2){
int num1 = (f1.num*f2.den) + (f1.den*f2.num);
int den2 = f1.den*f2.den;
//si lo imprimo asi me sale bien la fraccion
// System.out.println(num1+"/"+den2);
//-------> aca esta el error me parece <-------
Fraccion aux = new Fraccion(num1,den2);
return aux;
}
MAIN
package primerasClases;
public class FraccionAplicacion {
public static void main(String[] args) {
// creo el objeto fraccion
Fraccion f1 = new Fraccion(2,2);
Fraccion f2 = new Fraccion(2,2);
System.out.println("La suma es:"+Fraccion.fraccionSumar(f1, f2)+"\n");
}
}
me imprime esto "La suma es: primerasClases.Fraccion@4a5ab2"
en lugar de imprimir la suma de la fracciones
creaste el procedimiento fraccionMostrar() para no usarlo? xD
package primerasClases;
public class FraccionAplicacion {
public static void main(String[] args) {
// creo el objeto fraccion
Fraccion f1 = new Fraccion(2,2);
Fraccion f2 = new Fraccion(2,2);
Fraccion.fraccionSumar(f1, f2).fraccionMostrar();
}
}
que grande no conocia esta forma de llamar a ese metodo.
"Fraccion.fraccionSumar(f1, f2).fraccionMostrar();" pasa que ponia ese metodo
y me salia alguna q habia pasado como parametro y no la suma de las fracciones.
gracias...
mejor sobre escribe el metodoToString
package primerasClases;
public class Fraccion {
...
public String toString(){
return (num+"/"+den);
}
}
y en el main
system.out.print(new Fraccion(2,2));