Object-oriented development typically results in classes that stand on the shoulders of a number of other classes—MessageDialog is a case in point. As you can see from Figure 22-3, MessageDialog extends WorkDialog, which in turn extends GJTDialog; all of the functionality wrapped up in the ancestry of MessageDialog is, of course, inherited. Additionally, MessageDialog employs an extension of Postcard which it places in its work panel. As a result, the implementation of MessageDialog is simple enough to show in one fell swoop. MessageDialog is listed in its entirety in Example 22-5.