– Czołem, żołnierzu!

– Dzień dobry, Kapitanie.

– Mam dla Ciebie świetne wiadomości. Oto kilka ćwiczeń, które pomogą Ci utrwalić Twoje umiejętności. Pracuj nad nimi codziennie, a Twoje kompetencje będą bardzo szybko rosły. Zostały one zaprojektowane specjalnie dla IntelliJ IDEA.

4
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Thread.currentThread zawsze zwraca bieżący wątek
1. W metodzie printMsg przypisz bieżący wątek do zmiennej t. 2. W metodzie printMsg dodaj opóźnienie 1 millisekundy po wykonaniu wszystkich operacji.
4
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Nieprzerwane wątki
1. W metodzie run dodaj opóźnienie 10 milisekund po wykonaniu wszystkich operacji. Wyświetl "Wątek przerwany", jeśli wątek zostanie przerwany. 2. Spraw, aby wszystkie wątki były wykonywane po kolei: najpierw, dla wątku 1, odlicz od COUNT do 1; następnie dla wątku 2 - od COUNT do 1, itd. Przykład: #1
18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Rekurencyjne tworzenie wątków
1. Zmień klasę GenerateThread, aby uczynić z niej wątek. 2. Stwórz konstruktor GenerateThread, który musi: 2.1. Wywoływać konstruktor klasy nadrzędnej, podając numer utworzonego wątku jako String. Użyj createdThreadCount. 2.2. Uruchomić bieżący wątek. 2.3. Numery wątków muszą zaczynać się od 1. 3. N
4
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Nieprzerwane wątki
1. Dowiedz się, co robi program. 2. Spraw, aby program najpierw wyświetlił wynik wątku i aby po jego zakończeniu metoda main kontynuowała działanie. 3. Przykładowy wynik: wewnątrz MyThread 0 wewnątrz MyThread 1 ... wewnątrz MyThread 9 wewnątrz MyThread 0 wewnątrz main 1 ... wewnątrz main 9
4
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Zakleszczenie
1. Dowiedz się, jak działa program. 2. Nie zmieniając klas T1 i T2, spraw, aby ich wątki zakończyły się (niekoniecznie powodzeniem). 3. Nie używaj metody sleep.
9
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Postępowanie według wzoru
Dowiedz się, jak działa program. Podobnie jak w przypadku CountdownRunnable, utwórz wątek CountUpRunnable, który wyświetla wartości w następującej kolejności: od 1 do number.
18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Zagramy?
Jest to gra dla trzech osób. Każdy gracz (Gamer) posiada dwa parametry: nazwisko (name) oraz liczba działań na sekundę (rating). Wyświetl przeprowadzone działania oraz określ zwycięzcę i przegranych. Zaczynajmy. 1. Dowiedz się, co robi program. 1.1. List<String> actions przechowuje sekwencję d
18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Kto rano wstaje, temu Pan Bóg daje
1. Dowiedz się, co robi program. 1.1. Każdy wątek powinien wczytywać linie z konsoli. Wykorzystaj istniejący static BufferedReader reader. 1.2. Użyj AtomicInteger readStringCount, aby obliczyć, ile linii zostało wczytanych z konsoli przez wszystkie wątki. 2. Zaimplementuj metodę run: 2.1. Tak długo,
9
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Teraz Twoja kolej!
1. W klasie Solution utwórz publiczną statyczną klasę Read3Strings, która dziedziczy Thread. 2. W metodzie run, wczytaj trzy linie z konsoli. 3. Trzy linie powinny być wczytywane po kolei w jednym wątku i łączone w jeden ciąg poddzielony spacjami. 4. W metodzie main wyświetl wynik dla każdego wątku.
18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Wynik pliku sekwencyjnego
1. Dowiedz się, co robi program. 2. W bloku statycznym wczytaj 2 nazwy plików: firstFileName i secondFileName. 3. Wewnątrz klasy Solution utwórz klasę public static ReadFileThread, która implementuje interfejs ReadFileInterface (Pomyśl o tym, co jest bardziej odpowiednie: Thread czy Runnable). 3.1.

– Te poprzednie ćwiczenia były dla nowicjuszy. Dodałem trochę dodatkowych, zaawansowanych ćwiczeń dla weteranów. Tylko dla weteranów.

18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Metoda wytwórcza
1. Uważnie przyjrzyj się posiadanym klasom. 2. W osobnych plikach we wspólnym pakiecie utwórz klasy JpgReader, PngReader i BmpReader, które implementują interfejs ImageReader. 3. W osobnym pliku w pakiecie main utwórz klasę ImageReaderFactory z jedną metodą. 3.1. Zastanów się, jak powinna się ona na
18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Nić Ariadny
1. Utwórz 5 różnych wątków, które różnią się od Thread: 1.1. Wątek 1 musi być wykonywany nieprzerwanie; 1.2. Wątek 2 powinien wyświetlać "InterruptedException", gdy wystąpi InterruptedException; 1.3. Wątek 3 powinien wyświetlać "Hurra" co pół sekundy"; 1.4. Wątek 4 musi implementować interfejs Messa
18
Zadanie
Podstawy Java,  poziom 6lekcja 13
Niedostępne
Debuguj wszystko, co się da
Dowiedz się, co robi program. Przeczytaj o UncaughtExceptionHandler - to ważne. Jeszcze raz uważnie przyjrzyj się programowi. Dowiedz się, dlaczego nasz OurUncaughtExceptionHandler nie działa (użyj debuggera). Napraw błąd, tzn. zrób tak, aby wszystko działało. :) Oczekiwany wynik podany w dowolnej k