Duplicar posible:
what happens to an object in Java if you do not reference it, like here : myString.concat(“that”)¿Por qué no es necesario asignar el valor de retorno de un método a una variable?
public class ReturnTest
{
public static void main(String[] args)
{
ReturnTest rt = new ReturnTest();
rt.show();
}
public String show()
{
return "Hello";
}
}
En el código anterior el método show()
devuelve un valor String
que no está capturado por cualquier variable. Ni el compilador ni la JVM plantean ninguna advertencia, error o excepción de ningún tipo. Lo mismo es cierto para los tipos de retorno primitivos. ¿Por qué?
¿No debería el compilador asegurarse de que no se pierda ningún valor importante devuelto por un método?
¿Cómo puedo solucionar esto desde un depósito?
¿Qué pasa si asigna el valor a una variable pero no la examina? ¿Qué pasa si lo examina, pero no toma la decisión "correcta" basada en ese examen? ¿Qué tan lejos quieres tomar esto, antes de que el compilador haga lo "correcto"? –