Introduction to Java

There are three versions of Java:

  1. Java SE formerly J2SE (Java 2 Standard Edition)
  2. Jakarta EE formerly Java EE and J2EE (Java 2 Enterprise Edition)
  3. Java ME formerly J2ME (Java 2 Micro Edition)

Java SE

Java SE covers the fundamentals of Java programming such as:

Java SE can be used to create stand-alone applications. A stand-alone application is an application designed without using client-server architecture and without distributing application logic over multiple machines.

Client-Server architecture is where a client sends a request to the server, server takes the request, executes something, server then generates response to respective clients, client takes the response and display the response to the user
Diagram illustrating a stand-alone Java SE application running on a single machine.
Diagram illustrating a stand-alone Java SE application running on a single machine.

Examples of stand-alone applications are calculator, vim, eclipse, terminal emulator and GIMP.

Java SE is a dependancy for lots of other technology such as Jakarta EE, Hadoop, Selenimum, etc.

Jakarta EE

Jakarta EE covers server side programming, it can be used to create enterprise applications or distributed applications.

A server side or distributed application is an application designed and executed using client-server architecture or by distributing application logic over multiple machines.

Diagram illustrating a stand-alone Jakarta EE application running on a server machine.
Diagram illustrating a Jakarta EE application running on a server.

Java ME

Java ME covers micro programming, it can be used to create embedded and mobile based applications.

A mobile based application is an application designed and executed on the basis of mobile hardware system.