This article is specifically deals with details of Java and its introduction. Understanding Java is more needed for working efficiently with the Automation testing tools like Selenium.
Java is created and introduced by James
Gosling as programming language in 1991. Introduced company is Sun
Microsystems. First version of Java is 1.0 (1995) and the latest version is 1.8
termed as Java8. Oracle acquired the company Sun Micro Systems inn year 2010.
It has the general license called GPL – General public license.
Java Platform consists of below items:
1.
Programming language - Java language has its own structure , syntax
, programming paradigm and rules. It is derived from c language so the code
blocks are modularized same as like { }. Structurally java starts with
Namespace àProject àPackageàClasses àmethods and variables etc hierarchy.
2.
Java Compiler – Generally when
we program for java platform, source code will be in .java files. During the
compilation, the compiler checks against the syntax and converts/write into
byte code in .Class files. These byte codes are targeted to run on JVM(java
virtual machine). Java compilers differs from other compilers
3.
JVM - During runtime, it interprets the .class
files into native program instructions where CPU would interpret assembly
language instructions. Difference is that JVM is software that will be specific
for specific platform. – “Write Once, Run Anywhere”
Java distribution comes under two flavours
JRE – Java Run Time Environment
JDK – Java Development Kit
Difference between JDK and JRE:
1. JRE consists of the JVM and the Java class
libraries. Those contain the necessary functionality to start Java programs.
2.
JDK additionally contains the
development tools necessary to create Java programs. The JDK therefore consists
of a Java compiler, the Java virtual machine and the Java class libraries.
1.
Platform Independent – “Write Once
and Run anywhere”
2.
Object Oriented Programming
Language - Except the
primitive data types, all elements in Java are objects.
3.
Strongly typed programming
language -Java is
strongly-typed, e.g., the types of the used variables must be pre-defined and
conversion to other objects is relatively strict, e.g., must be done in most
cases by the programmer.
4.
Interpreted and Compiled
language - JVM
5. Garbage Collector -Automatic garbage collection
is another great feature of Java with which it prevents inadvertent corruption
of memory. Similar to C++, Java has a new operator to allocate memory on the heap
for a new object. But it does not use delete operator to free the memory as it
is done in C++ to free the memory if the object is no longer needed. It is done
automatically with garbage collector.
6.
Java supports Multithreading -Java language is that it allows multiple threads of execution
to run concurrently within the same program A single Java program can have many
different threads executing independently and continuously. Multiple Java
applets can run on the browser at the same time sharing the CPU time.
7. Java is distributed - extensive set of routines to handle TCP/IP protocols like
HTTP and FTP java can open and access the objects across net via URLs.