Hi. I am a student, and I have an report to do for our Computer Programming Fundamentals class.

We are required to demonstrate the use and function of constructors and the JOptionPane class.

I have implemented a simple age calculator using Java as my demo, and I intend to go through the code to show them what each line does, however I'd like to ask the forumers here for advice on optimizing my code so that it is:

a) smaller
b) simpler
c) well-documented (prefer this)
d) faster (prefer this over size)

I used three classes:

a Main class (http://pastebin.com/BBT0pkWt);
a UserInput class to gather user input (http://pastebin.com/94KRwgDi);
a ProgramOutput class to display the output of the program (http://pastebin.com/DYGLsNqG); and
a GlobalVariables class to contain public static variables to simulate "global" variables (http://pastebin.com/DCh71xu8).

Please check my code, and suggest improvements.