Wybór języka

Mała łamigłówka z Javy

Poniżej znajdziesz trochę kodu napisanego w Javie. Mam do Ciebie prośbę: postaraj się nie uruchamiać tego kodu, tylko zastanów się “na sucho”, co się stanie.

Skopiowanie kodu do jshella zajmuje tylko kilka sekund, ale i wiedza pozyskana w ten sposób nie będzie trwała…

Sugeruję zrobić z tego ćwiczenia swoisty eksperyment myślowy, poczytać Javadoc, podumać…

19import java.util.*;
20
21public class Riddle {
22
23	public static void main(String[] args) {
24		var raz = List.of("checking!");
25		var dwa = List.copyOf(raz);
26		if (raz == dwa) {
27			System.out.println("ene");
28		} else if (raz.equals(dwa)) {
29			System.out.println("due");
30		} else {
31			System.out.println("like");
32		}
33		System.out.println(raz.getClass().getCanonicalName());
34	}
35}

Teraz postaraj się odpowiedzieć na te dwa pytania:

  1. Jaka jest minimalna wersja Javy wymagana do uruchomienia tego kodu?
  2. Jaka będzie pierwsza wypisana linia przez ten kod? ene, due czy może like?
  3. * Jaka jest klasa obiektu raz?

Odpowiedzi (i mojego komentarza) spodziewaj się wkrótce.

Kod znajduje się też na Githubie.

Wybór języka