Java offers GUI development through different means like Abstract Swing, Windowing Toolkit (AWT) and JavaFX. While AWT includes a number of pre-constructed elements such as button, menu, list, and various third-party components, Swing, a GUI widget toolkit, additionally gives certain advanced components like trees, scroll panes, tables, tabbed panel, and lists.
