Możliwe zduplikowane:
what happens to an object in Java if you do not reference it, like here : myString.concat(“that”)Dlaczego nie jest konieczne przypisanie wartości zwracanej przez metodę do zmiennej?
public class ReturnTest
{
public static void main(String[] args)
{
ReturnTest rt = new ReturnTest();
rt.show();
}
public String show()
{
return "Hello";
}
}
W powyższym kodu sposób show()
zwraca wartość String
które nie wychwycone przez dowolny zmiennej. Ani kompilator, ani JVM nie podnoszą żadnych ostrzeżeń, błędów ani wyjątków. To samo dotyczy pierwotnych typów zwrotu. Czemu?
Czy kompilator nie powinien zwracać uwagi na to, że żadna ważna wartość nie została zwrócona przez metodę?
Jak mogę to naprawić z powłoki?
Co się stanie, jeśli przypiszesz wartość zmiennej, ale jej nie badasz? Co się stanie, jeśli go zbadasz, ale nie podejmiesz "właściwej" decyzji w oparciu o to badanie? Jak daleko chcesz to wziąć, zanim kompilator zrobi "właściwą" rzecz? –