Java Multithreading
The Java Multithreading quest introduces students to the secret CodeGym center with multithreading. Over the course of 10 levels, you will study the organization of Object, String, and inner classes. You will learn how to create and stop threads, what deadlock is, and what the wait, notify, and notifyAll methods do. You'll gain experience working with jsoup and Swing, and learn about autopacking and the particulars of its implementation. On this quest, you will create your first mini-projects, which are big tasks. To facilitate learning, they are divided into stages. You will need to write a few games: Tetris, Snake, a space shooter, and Arkanoid. You will also work on serious tasks with multiple stages, such as a chat system, ATM emulator and even a web scraper!
- Level 1
Locked Organization of an Object object: equals, hashCode, clone, wait, notify, toString() - Level 2
Locked String: mutable, immutable, format, StringTokenizer, StringBuilder, StringBuffer - Level 3
Locked Inner classes, e.g. Map.Entry - Level 4
Locked Inner classes, implementation features - Level 5
Locked Creating and stopping threads: start, interrupt, sleep, yield - Level 6
Locked Accessing shared data: synchronized, volatile - Level 7
Locked Deadlock. Wait, notify, notifyAll - Level 8
Locked TreadGroup, ThreadLocal, Executor, ExecutorService, Callable. Working with jsoup - Level 9
Locked Autoboxing, implementation features - Level 10
Locked Operators: numeric, logical and binary. Working with Swing