Java multithreading and networking training