Elvis Lives Again
Elvis Presley, legenda rock and rolla. Są tacy, którzy nie przyjmują do wiadomości informacji o jego śmierci; wierzą, że „król” nie umarł i w prywatności wiedzie spokojne życie. A jak to jest naprawdę…
- Co pojawi się na ekranie po uruchomieniu poniższego kodu?
public class Elvis { // Singleton pattern: there's only one Elvis public static final Elvis ELVIS = new Elvis(); private Elvis() { } private static final Boolean LIVING = true; private final Boolean alive = LIVING; public final Boolean lives() { return alive; } public static void main(String[] args) { System.out.println(ELVIS.lives() ? "Hound Dog" : "Heartbreak Hotel"); } }
Odpowiedzi:
(a) Hound Dog
(b) Heartbreak Hotel
(c) różnie w zależności od uruchomienia
(d) żadne z powyższych
- Odpowiedź uzasadnij i wyjaśnij dlaczego tak to działa
- Jak poprawić powyższy kod, aby zachowywał się zgodnie z intuicją
Autorami zagadki są Joshua Bloch i William Pugh