Java is a programming language with a general purpose, synchronized, purpose-oriented and class-based, and a virtual machine-dependent environment (JVM) operating environment - which is the most important cornerstone of the Java platform. It was named Java in relation to the Java coffee that is produced in Indonesia and therefore its name is associated with a coffee cup. 1
In this article we will explain what Java is, what its features are, and how it works.
Java is a purpose-oriented programming language, similar to C ++ but optimized and simplified. Java is free to access and works on all platforms.
Why do we use Java ?
Java is one of the most widely spoken languages, and has dominated programming from the beginnings of 2000 to the present in 2018. It is used in:
Banking services: to deal with managing commercial transactions.
Shops: The accounting software you see in stores and restaurants written entirely using Java.
Information technology: Java is designed to solve the implementation dependency problem.
Android: Most Android applications are written using Java.
Stock exchange: to write algorithms that help us know which company we can invest in.
The scientific and research community: you can deal with the huge amount of information.
In addition to many other uses, Java in programming is like an environment rich in opportunities and options.
History of Java
Java was developed in 1995 for Microsystems Sun by Jais Gosling and his team members Mike Sheridan and Patrick Naton, who were called the Green Team. It was created to craft a programming language for operating smart application devices such as interactive TV, and then it developed and became used for making office programs, internet software, web pages, mobile applications and others.
Java features
Concurrent: Multiple instructions can be executed simultaneously rather than in sequence.
Programming language built with categories and purpose oriented.
Independent programming language: follows the principle of "write it once and implement it anywhere". The translated code can be implemented on all platforms that support Java.
In short, Java is a computer platform that enables you to develop different applications.
Java properties
Simplicity: Java has made life easier by removing all the complications like pointers, overloads that we were experiencing in C ++ and other programming languages.
Mobile: Java is an independent platform, which means that any application written on a platform can be easily transferred to another platform.
Purpose of orientation: everything (such as an employee, time, or anything) can be considered a purpose that has states and behavior, and all operations can be performed for this purpose.
Locked: the entire code is converted to Byte code after the compilation, which is unreadable; Java does not use explicit indicators and implements the program within the sandbox to prevent unreliable activities and obtain virus-free systems.
Dynamic: It has the ability to adapt to advanced environments that support dynamic memory allocation that reduces memory loss to improve application performance.
Distributed: Java provides features that help build distributed applications, using the Remote Method Invocation method. The program can call a method from another program over the network to give us the output. You can access files by calling methods from any device on the network.
Durable: Java has a strong memory management system, which helps in eliminating errors by checking the code during compilation and during execution time.
High performance: Java performs highly thanks to its use of byte code (octode) that can be easily translated into the local machine language, and with JIT (Just-In-Time) compilers we get high performance.
Multithreaded: Java supports multi-part implementation, including concurrent initial instructions, which makes programming easier.
Java components
Java Virtual Machine JVM Java Virtual Machine: When a code translation process is performed, it produces a file consisting of a byte code that is only understood by the JVM, which in turn opens and manages this file by converting it to a code that is understood by the “computer” machine, depending on the operating system used. Which can vary from user to user, and is responsible for array bounds checking, and the garbage collection java collection.
JRE Java Runtime Environment: This package contains libraries and files for the Java language as well as files supported by default with Java or added by the programmer, and also contains tools used in the process of writing code such as translation and others. That is why if you want to run any program written in Java you must have this package on your own machine.
JDK Java Development Kit: is a software development environment used to develop Java applications. It is released by Oracle and contains a Java Operating Environment (JRE), compiler, compiler, revised, file compiler, authenticator, and other tools necessary for software development.
“Author : Saeed Ata-Allah”
“Source : Link”