Create Java applications that run on all operating systems.
Create web and desktop applications using an object oriented language.
Automate building and deployment of web apps, games, and desktop software.