1. Standalone Desktop GUI Applications :
- Standalone means it runs int the context of local disk and runtime of the same device (means it will run on single independent device without interacting with other device)
- Eg : VLC Player, Antivirus, Video game, etc.
- Java has provided AWT, Swing and JavaFX to develop the UI rich interactive desktop applications
- IDEs like Netbeans, Eclipse provides the plugins to easily use these components
2. Web Applications :
- Provides support to develop a web application using Servlet, Jsp, Struts, Spring, etc.
- Advantages are security and ease of development while using Java for web dev
- Almost all the banking web applications are developed using the Java( While making any online banking transaction, check the URL, you will find .jsp extension).
3. Mobile Applications :
- Java Micro Edition (Java ME) is a cross-platform framework specially released to build applications that run across all Java supported small devices, including feature phones and smart phones
- The mobile applications for famous smart phone operating system Android can be developed in java using Android Software Development Kit(SDK)
4. Embedded Applications :
- Used in robotics, Television, mobile, SIM Card, Smart Card, etc.
- Blue Ray disk player is one of the devices which 100% uses java only
Why use Java ?
- Open source
- Has huge community support
- Works on different platforms (eg: Windows, MacOS, Linux, RasberryPi, etc.)
- Allows code to be reused
- reduces development costs
- Secure, fast and powerful