Differences between Java, Core Java, and Advanced Java
What is Java?
Java is a multipurpose and general computer programming language that is, class-based, object-oriented, as well as concurrent and it has been specifically designed to have as few implementation dependencies as possible. The language has been intended to let application developers use the basic feature that it has been touted for “write once, run anywhere” (WORA), and this means that compiled Java code can run on all platforms that support Java with the implementation of JVM (Java Virtual Machine) without the need for recompilation.
Different Editions of Java Platform:
- J2SE (Java Platform, Standard Edition)
Also known as Core Java, this is the most basic and the most standard version of Java that you can encounter. It’s also called as the student's level java and is taught in schools. It is the purest form of Java, a basic foundation for all other editions. The language mainly consists of a wide variety of general-purpose APIs (like java.lang, java.util) and it also contains many special purpose APIs. J2SE is mainly used to create applications that run under the Desktop environment. It consists of all the basics of Java: the language, primitive data types, Arrays, Streams, variables, Strings Java Database Connectivity(JDBC) and much more. This is the standard, from which all other editions came out, according to the needs of the time.
- J2EE (Java Platform, Enterprise Edition)
J2ME (Java Platform, Micro Edition)
This version of Java is mainly isolated and focused on for the applications running on embedded systems, mobiles and small devices. Also, the J2ME apps help in utilizing the web compression technologies, which in turn, reduce network usage, and hence it enables the feature of cheap internet accessibility. J2ME uses many libraries and API’s of J2SE, as well as, many of its own. The basic aim of this edition was to work seamlessly and intuitively on mobiles, wireless devices, set top boxes, etc. Old Nokia phones, which used Symbian OS, made use of this technology.
Other Editions of Java:
- Aside from these three versions, there was another Java version that was released, Java Card. This edition was targeted to run applets smoothly and securely on smart cards and similar technology. Security as well as portability was its main feature.
- JavaFX is an edition of Java technology, that has now been merged with J2SE. It is heavily focused and mainly used, to create rich GUI (Graphical User Interface) in Java apps. It provides an alternative to the basic Swings (in J2SE), with itself as the standard GUI library. Support has been provided by both Desktop environment as well as web browsers.
- PersonalJava was another Java based edition, which was not deployed much, as its function was fulfilled by further versions of J2ME. This version of Java has been made to support the World Wide Web (and Java applets) and consumer electronics. PersonalJava was also used heavily for embedded systems and mobile. But, it was discontinued in its earlier stages.
Conclusion: So now you know the basic difference between, Java, Core Java, and Advanced Java.