Czy metoda deklarująca zwracanie wartości może niczego nie zwracać?
Czy metoda deklarująca zwracanie wartości może niczego nie zwracać?
Wydawałoby się, że odpowiedź jest oczywista...
Jednak przyjrzyjmy się następującemu przykładowi:
public String strangeMethod() { while (true) { System.out.println("Nie zwaracam wartości..."); } }
Ten kod się kompiluje!
Co więcej, dopisanie poza pętlą instrukcji return zwracającej wartość tekstową spowoduje, że kod przestanie się kompilować! Kompilator zasygnalizuje wtedy kod nieosiągalny! :-)