Here is some code (modified for this example) that I wrote when I was first learning about extends keyword. And action listeners, and inner classes. It uses AWT only, but you should easily modify it to use Swing.
[This message has been edited by Mike Curwen (edited May 02, 2001).]
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com