Selft training repo
Java is a programming language and computing platform first released by Sun Microsystems in 1995 Developers as well as users that would like to learn Java programming should visit the dev.java. 1
Java is a multi-platform, object-oriented, and network-centric language that can be used as a platform in itself. 2
Java is free to download for personal use. Java is also free for development. 3
Object-Oriented Programming (OOP) is a programming paradigm in computer science that relies on the concept of classes and objects. It is used to structure a software program into simple, reusable pieces of code blueprints (usually called classes), which are used to create individual instances of objects.4
See also: Object Oriented Programming
See also: OOP in Java
WORA, which is abbreviated as Write Once Run Anywhere, is the feature applicable to those programs which hold the capability to execute itself on any operating systems or any machine. Sun Microsystem gave this terminology for their programming language - Java. 5
When we compile java source code using java compiler, it generates .class file which is nothing but the bytecode. The bytecode is platform independent and bytecode is only understandable to JVM and not the windows, Linux, Mac OS, etc. 6
Java allows run Java bytecode on any computer irrespective of the machine or the hardware, using JVM (Java Virtual Machine). The bytecode generated by the compiler is not platform-specific and hence takes the help of JVM to run on a wide range of machines. 5
The Java Virtual Machine acts as an additional abstraction layer between the Java platform and the underlying machine hardware. Java source code can run only on those machines that have JVM installed on them. 2
JVM is basically responsible for converting .class or bytecode into platform specific executable file which is shown below. 6
To begin programming in Java, you need to install a Java Edition on your system. There are four main Java editions:
Java Micro Edition (Java ME) 2
See also: Oracle Java SE Documentation
The Java language has undergone several changes since JDK 1.0 as well as numerous additions of classes and packages to the standard library. Regarding Oracle Java SE Support Roadmap, version 20 is the latest one, and versions 17, 11 and 8 are the currently supported long-term support (LTS) versions Regarding Oracle Java SE Support Roadmap, version 20 is the latest one, and versions 17, 11 and 8 are the currently supported long-term support (LTS) versions. 7
Functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids changing state and mutable data.
Java introduced functional programming features with the release of Java 8 in March 2014.
Java is widely used for reactive programming, especially with the introduction of the Reactive Streams API and libraries like Project Reactor and Akka Streams. Spring Framework also provides support for building reactive applications (Spring WebFlux).
Java introduced functional programming features with the release of Java 9 in September 2017.
https://www.java.com/en/download/help/whatis_java.html ↩
https://www.oracle.com/java/ ↩
https://www.educative.io/blog/object-oriented-programming ↩
https://www.w3schools.in/java/questions-answers/write-once-run-anywhere-wora ↩ ↩2
https://bytesofgigabytes.com/java/why-java-is-platform-independent/ ↩ ↩2
https://en.wikipedia.org/wiki/Java_version_history ↩