In Java, Abstract Window Toolkit(AWT) is a platform independent widget toolkit for windowing, graphics, and user-interface.
As the Java programming language, the AWT is also platform-independent. A common set of tools is provided by the AWT for graphical user interface design. The implementation of the user interface elements provided by the AWT is done using every platform's native GUI toolkit. One of the AWT's significance is that the look and feel of each platform can be preserved.
The super class of all graphical user interface objects is Component. The components are added to the Container object to create a Graphical User Interface (GUI). Moreover containers can be nested arbitrarily as they are also considered as a component. While creating nested GUI's, we often use Panel. Native code is used by each AWT component to display itself on the screen. For example, the buttons work as Microsoft Windows buttons when we run a Java application under Microsoft Windows. Same thing happens with Macintosh and UNIX.
The GUI application or applet is created in three steps. These are :
A new thread is started by the interpreter for user interaction when an AWT GUI is displayed. When any event is received by this new thread such as click of a mouse, pressing of key etc then one of the event handlers is called by the new thread set up for the GUI. One important point to note here is that the event handler code is executed within the thread.
For more details and sample code click here
Recommend the tutorial