Chapter 17. Make a Connection: Networking and Threads

image

Connect with the outside world. Your Java program can talk to a program on another machine. It’s easy. All the low-level networking details are taken care of by the built-in Java libraries. One of Java’s big benefits is that sending and receiving data over a network can be just I/O with a slightly different connection at the end of the I/O chain. In this chapter we’ll connect to the outside world with channels. We’ll make client channels. We’ll make server channels. We’ll make clients and servers, and we’ll make them talk to each other. And we’ll also have to learn how to do more than one thing at once. Before the chapter’s done, you’ll have a fully functional, multithreaded chat client. Did we just say multithreaded? Yes, now you will learn the secret of how to talk to Bob while simultaneously listening to Suzy.

Real-time BeatBox chat

image
image

You’re working on a computer game. You and your team are doing the sound design for each part of the game. Using a “chat” version of the BeatBox, your team can collaborate—you can send a beat pattern along with your chat message, and everybody in the BeatBox ...

Get Head First Java, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.