Wpis z mikrobloga

Korzystają z tego że całe mirko jest puste i jest tam tylko jeden wpis o spamie o piłce nożnej podam kolejną łamigłówkę z rozmów kwalifikacyjnych na juniora javy ( ͡° ͜ʖ ͡°)

```

    Object obiekt = new Object();
    WeakReference referencja = new WeakReference<>(obiekt);
    System.out.println(referencja.get() != null);
    System.gc();
    System.out.println(referencja.get() != null);
```

Jaki jest wynik próby kompilacji i uruchomienia tego kodu?

#interfacesmieci #naukaprogramowania

Jaki jest wynik próby kompilacji i uruchomienia tego kodu?

  • false, false 7.9% (3)
  • true, false 23.7% (9)
  • false, true 0% (0)
  • true, true 52.6% (20)
  • Błąd kompilacji 7.9% (3)
  • Bład runtime, Object nie może być w WeakReference 2.6% (1)
  • Inny błąd runtime 5.3% (2)

Oddanych głosów: 38

  • 9
@alkan, @radar42, @Wyrewolwerowanyrewolwer, @PoteznyNick @KombinatorAstralny:

poprawnymi odpowiedziami sa

false false
true false
true true

w momencie kiedy dochodzimy do inicjalizacji WeakReference, nie ma juz zadnych strong-reference do obiektu, wiec GC ma prawo sie go pozbyc, dlatego mozliwe jest false false.
Jesli GC wtedy nie zbierze obiektu, wyswietli true, potem GC dostanie sugestie zeby zebrac obiekt i wtedy zaleznie od wersji JVM i GC i flag GC