1.Platform Independent
2.Simple
3. Object Oriented
4. Intepreted
5. Distributed
6.Secure
7. Robust
8. Dynamic
9. Automatic memory management
10.Architecture Neutral
11.Portable
12.High Performance
13.Multithreaded
------------------------------------------------------------------------------------------------------------------
Platform Independent
- The concept of Write-once-run-anywhere (known as the Platform independent) is one of the important key feature of java language that makes java as the most powerful language.
- Java code can be run on multiple platforms e.g.Windows,Linux,Sun Solaris,Mac/OS etc.
- Java code is compiled by the compiler and converted into bytecode.This bytecode is a platform independent code because it can run on multiple platforms i.e. Write Once Run Anywhere(WORA).
- Java has a concise, cohesive set of features that make it easy to learn and use.
- Java's syntax is based on C++.
- Java omitted many confusing and/or rarely used features of C++ .Eg.Explicit pointers,structures,unions,operator overloading,virtual base class,etc.
- In simple words,object oriented design is a technique for programming that focusses on the objects(i.e. data) and methods to that object.
- Object oriented programming simplifies software development and maintenance by providing some rules.
- Basic object oriented concepts :
- Class
- Object
- Abstraction
- Encapsulation
- Inheritance
- Polymorphism
- Message Passing
- Reusability
Interpreted
- The Java interpreter can execute Java bytecodes directly on any machine to which the interpreter has been ported.
- The source code is first compiled and then generates the code into an intermediate representation called Java bytecode which is a highly optimized set of instruction code.
- This code can be interpreted on any system that has a Java Virtual Machine(JVM) and generates the machine code.
- Java was made/designed with the distributed environment of the Internet in mind.
- RMI and EJB are used for creating distributed applications.
- The widely used protocols like HTTP and FTP are developed in Java.
- Java applications can open and/or access objects across the Net via URLs with the same ease as when accessing a local file system.
Secure
- Java is secured because:
- No explicit pointer
- Programs run inside virtual machine sandbox.
- Java enables the construction of virus - free,tamper - free systems.
Robust
- Robust simply means strong.
- Java encourages error - free programming by being strictly typed and performing run - time checks.
- Java lacks expilicit pointers which means less security problem.
- Java puts a lot of emphasis on early checking for possible problems i.e. compile time checking , run time checking and eliminating situations that are error -prone.
- All of the above features makes the Java language robust.
Dynamic
- The Java Virtual Machine(JVM) maintains a lot of runtime information about the program and the objects in the program.
- Libraries are dynamically linked during runtime.
- So, even if you make dynamic changes to pieces of code, the program is not effected.
- Automatic memory management ,also known as automatic garbage collection ,is the practice of allowing the language implementation to keep track of used and unused memory,freeing the programmer from this burden.
- For example,in C++ programming language ,dynamically allocated memory will be de-allocated if the delete operator is called.
Architecture Neutral
- The compiler generates an architecture-neutral object file format -the compiled code.
- It is executable on many processors,given the presence of the java run time system.
- The Java compiler does this by generating bytecode instructions which have nothing to do with particular computer architecture.
- In short,Java is Architecture-neutral it generates bytecode that resembles machine code, and are not specific to any processor.
Portable
- Java programs can execute in any environment for which there is a Java run-time system.
High Performance
- Java uses native code usage, and lightweight process called threads.
- In the beginning interpretation of bytecode resulted the performance slow but the advance version of JVM uses the adaptive and Just in time (JIT) compilation technique that improves the performance.
Multithreaded
- Java is also a Multithreaded programming language.
- Multithreading means a single program having different threads executing independently at the same time.
- Multiple threads execute instructions according to the program code in a process or a program. Multithreading works the similar way as multiple processes run on one computer.
Features of Java
Reviewed by shashank
on
08:19
Rating:
No comments: