Java is a general purpose language created by James Gosling in 1995. Java products numbers/version are incremental and latest version is 8. But Sun the company develops Java use version number like 1.8 where it is equal to version 8.
Ancestors
Java influenced from C, C++ and SmallTalk languages and also influenced its rival C#. After 3 years Java 1.0 version landed Microsoft created C#.
Java applications that runs on browsers and named Java Applets was popular some time ago but security issues and alternative technologies made Applets unpopular.
Java’s main motivation was platform independent applications. Platform Independence means same application executable can run without any modification on Mac, Windows, Linux etc. Before java applications developed languages like C, C++ should compiled for all different platforms.
Java have a lot security issues so a lot of updates comes to java like 8.65 where 65 is minor version number.
Bytecode
Java magic comes from Bytecode/JVM which makes Java applications platform independent. JVM (Java Virtual Machine) runs between Java Application and operating system. JVM interprets Java Application which is consist of Bytecode (Platform Independent Code) and converts it to platform specific code.
Bytecode is it converted platform specific code JIT (just in time) which means the necessary code is converted on the fly to run.
Java is interpreted and compiled platform. As said above first java source code is compiled into bytecode and then at run time bytecode is interpreted by jvm.
Java is dynamic language because java runtime information can be gathered or changed while run time.
Java is object oriented language where objects can be created and used easily.
Java use Encapsulation so only required and authorized code can be used current scope. Details of the unnecessary code is hide.