Java is a powerful, cross-platform, object-oriented programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems’ Java platform. Java was originally called OAK, and was designed for advanced software for consumer electronics. Java is an object-oriented language similar to C++. The language derives much of its syntax from C and C++ programing language.
- Architecture neutral
Java is easy to program because its syntax is very similar to the most popular language called “C”. Java is an object-oriented language similar to C++ and omits many rarely used, poorly understood, confusing features of C++. The following omitted features are :
- Operator overloading
- Multiple inheritance
- Extensive automatic coercions
Java added automatic garbage collection feature for allocating and freeing of memory.
In object-oriented programs data is represented by objects. An object have two sections state and behaviour which descirbed by field and method respectivily. Java support the following object oriented features:
Java has rich TCP/IP network library makes it easy to establish to various TCP/IP processes(such as HTTP and FTP) that are running on network machine. Creating newtwork connection in java is much easier than in C or C++. This makes java is very important in a world of e-commerce.
Java is one of the most robust languages. Automatic memory management and garbage collection is the biggest contributor here. Strong type checking also helps. Also, another factor in its robustness is its portability across many Operating systems, which is supported by the Java Virtual Machine.
Java is interpreter based language as well. The Java runtime (interpreter) can run on any machine / environment where it has been ported. The Java runtime(JVM) is not platform independent. Existence of the Java runtime makes Java byte code platform independent.
Java does not allocate direct pointers to memory. This makes it impossible to accidentally reference memory that belongs to other programs or the kernel.
Java stongly supports network environments. Network environment emphesise on data security. Java enables the construction of virus-free, tamper-free systems. The authentication techniques are based on public-key encryption.
Java is architecture neutral, so your applications are portable or migrate across multiple platforms. Multiple platforms includes computer system as well as varity of hardwares architechture and Operating system architecture. Because of the fact that Java compilers generate byte code, which gets executed by Java runtime acrross the multiple platform.
Write-Once-Run-Anywhere (WORA) feature makes java programming portable. (WORA) is a slogan created by Sun Microsystems to illustrate the cross-platform benefits of the Java language. This makes java can be developed in any platform, compiled into a standard format called bytecode and can able run any JVM abaled devices.
Java requires the sizes of primitive data to be specified. Binary data are stored in a fixed format. Example in C language interger takes 2 bytes on 32 bit machine and 4 bytes in 64 bit machine. But in java gives 4 bytes for interger to support cross platform.