History Of Java
JAVA was developed by Sun Microsystems Inc in 1991, later acquired by Oracle Corporation in 2010.Originally called Oak which was designed for use in embedded chips in consumer electronic appliances.
In 1995 Oak was renamed Java , it was redesigned for developing Web applications. It was developed by James Gosling and Patrick Naughton. Java is a simple programming language. Writing, compiling and debugging a program is easy in java. It helps to create modular programs and reusable code.
What Java Can Do
Apart from this, Java has been used in different domains. Some of them are listed below:
Banking: To deal with transaction management.
Retail: Billing applications that you see in a store/restaurant are completely written in Java.
Information Technology: Java is designed to solve implementation dependencies.
Android: Applications are either written in Java or uses Java API.
Financial services: It is used in server side applications.
Stock market: To write algorithms as to which company they should invest in.
Big Data: Hadoop MapReduce framework is written using Java.
Scientific and Research Community: To deal with huge amount of data.
Some of the key features of Java that contributed to its popularity are:
Java is designed to be easy to learn. If you are a fresher or a professional programmer, believe me it’s very simple to master Java. Java has made life easier by removing all the complexities such as pointers, operator overloading as you see in C++ or any other programming language.
Java is platform independent which means that any application written on one platform can be easily ported to another platform. This is a key feature of java as it can run on all the operating systems without any dependencies.
Java is an object oriented programming language. In java, everything is considered to be an “object” and all the operations are performed using these objects. These objects possess some state and behavior. Therefore, it is the most used language as it supports OOP’s concepts.
Java is a secured language because all the code is converted in byte code after compilation, which is not readable by human. Also, java does not use explicit pointer and run the programs inside the sandbox to prevent any activities from untrusted sources. It enables to develop virus-free, tamper-free systems/applications.
Java is dynamic in nature as it has the ability to adapt to an evolving environment. Java programs carry a substantial amount of run-time information which is used to verify and resolve access to objects. It also supports dynamic memory allocation due to which memory wastage is reduced and performance of the application is increased.
Java provides a feature which helps to create distributed applications. Using Remote Method Invocation (RMI), a program can invoke a method of another program across a network and get the output. You can access files by calling the methods from any machine on the internet.
Java has a strong memory management system. It helps in eliminating error as it checks the code during compile and run time. Java completely takes care of memory allocation and releasing, which makes the Java program more robust.
Java achieves high performance through the use of bytecode which can be easily translated into native machine code. With the use of JIT (Just-In-Time) compilers, Java enables high performance.
Java is most widely used programming language. It is present everywhere. It really doesn’t matter in which domain you work in, you will surely come across Java sooner or later!
Before we start learning Java, lets get familiar with common java terms.
The Java Language Specification, API and IDE
Java syntax is defined in the Java language specification, and the Java library is defined in the Java API.
The JDK is the software for developing and running Java programs.
An IDE is an integrated development environment for rapidly developing programs.
Computer languages have strict rules of usage. If you do not follow the rules when writing a program, the computer will not be able to understand it. The Java language specification and the Java API define the Java standards.
The Java language specification is a technical definition of the Java programming language’s syntax and semantics. You can find the complete Java language specification at.
The application program interface (API) , also known as library , contains predefined classes and interfaces for developing Java programs. The API is still expanding. You can view and download the latest version of the Java API at.
Java is a full-fledged and powerful language that can be used in many ways. It comes in three editions:
Java Standard Edition (Java SE) to develop client-side applications. The applications
can run standalone or as applets running from a Web browser.
Java Enterprise Edition (Java EE) to develop server-side applications, such as Java
servlets, JavaServer Pages (JSP), and JavaServer Faces (JSF).
Java Micro Edition (Java ME) to develop applications for mobile devices, such as cell phones.
This book uses Java SE to introduce Java programming. Java SE is the foundation upon which all other Java technology is based. There are many versions of Java SE. The latest,Java SE 11, is used in this book. Oracle releases each version with a Java Development Toolkit (JDK). For Java SE 11, the Java Development Toolkit is called JDK 1.11 (also known as Java 11 or JDK 11 ).