Chapter 27. Decorator
Figure 27.1. Java input/output (I/O) streams provide a classic example of Decorator.