Well, there are several kinds of wrappers. The most common are primitive wrappers. If you have a method or Collection that only accepts Objects then you can't feed in a primitive value. One way around this is to "wrap" the primitive value in an Object that just houses the value of the primitive. class Integer just holds one value. That is the value of an integer. Then it has a bunch of methods to manipulate that integer so that it can be "handled" as an object. ex: Integer myInt = new Integer(3);

A wrapper class is an implementation of the Decorator Pattern. To learn more about what the Decorator Pattern is and why it's useful, take a look at the Structural Patterns section of James W. Cooper's The Design Patterns Java Companion.