Background of Java’s Birth
Java was developed in 1991 by James Gosling, a developer at Sun Microsystems. When it was originally developed, it was called Oak and it was a language developed for use in embedded programs in consumer electronics and electronics.
In 1994, James Gosling decided to rename Oak as a familiar JAVA and apply Java to the rapidly growing World Wide Web(www). This decision made Java the programming language most people use.
Thanks to this decision to apply Java to the Web, Java has made a breakthrough with the Internet.
Java as a programming language
Java is a powerful general-purpose language, yet has a strong network environment. The Java language is characterized by simplicity, object orientation, and distributed environment.
Features of Java
Java is based on C ++, but it is a language that drastically removes many factors that confused programmers in C or C ++.
All elements of a Java program are represented by objects. Object orientation provides many benefits such as software reuse and encapsulation of information, which is a way of having a structure similar to the real world in which we live.
Optimized for distributed environment
Java is designed to run efficiently over the Internet or network. It provides libraries associated with http, ftp, and tcp / ip protocols, as well as provides RMI functionality to call remote objects on other computers.
Execution by Interpreted
The Java programming source is translated into bytecode that runs in the Java virtual machine (JVM), and the translated bytecodes are executed in all computer environments where the bytecode interpreter is present. Of course, you can run it on any computer that has a Java Virtual Machine (JVM) installed on the network.
Java requires high reliability because the written source must be run on various computers. So Java has the following characteristics to maintain high reliability.
- No Pointer
- Automatic Garbage Collection
- Strict type Checking
- Runtime Error Processing
Since the development environment and the execution environment are separated so that Java can run in a distributed environment, the JVM is designed to perform essential checks for integrity.
Neutral structure and high portability
Java does not depend on a particular computer because it uses the bytecode that runs on the Java virtual machine. In other words, it can be run on any kind of computer where the JVM is installed.
In addition to the grammar of the language, the system structure is also designed to be neutral in the subordinate part of the system. For example, int is always represented in 32 bits, regardless of system. Java can provide high portability because it has structure-neutral features for the system.
The bytecode is designed to be efficiently executed by the interpreter and provides a JIT compiler to provide execution efficiency. The Java Translator automatically allocates and optimizes registers during bytecode generation to generate efficient byte code.
The tasks that need to be performed at the same time are wrote by threads. For multi-threading, Java also provides a library for convenient use of threads.
Java is a language designed to adapt to changing environments and allows you to add new methods or properties to your library without affecting existing programs. This is because Java has a connection to the library at runtime.