Features of Java



Simple:
  • The Java language is easy to learn. Java code is easy to read and write.
  • i) Does not use header files
    ii) Eliminated the use of pointer
    iii) Operator overloading and virtual base classes are eliminated
  • Java is similar to C/C++ but it removes the drawbacks and complexities of C/C++ like pointers and multiple inheritances. So if you have background in C/C++, you will find Java familiar and easy to learn.
Object oriented:
  • Java is a 99.9% pure Object oriented . Every thing in java is object. all programs and data reside inside objects and classes.
  • It has all OOP features such as abstraction, encapsulation, inheritance and polymorphism.
  • So for this feature java is Most Popular Language because it also Supports Code Reusability, Maintainability etc.
Platform Independent:
  • Java compiler generates an platform independent code called bytecode.
  • Java code is compiled into intermediate format (bytecode), which can be executed on any systems for which Java virtual machine is ported. That means you can write a Java program once and run it on Windows, Mac, Linux or Solaris without re-compiling. Thus the slogan “ Write once, run anywhere ” of Java.Besides the above features, programmers can benefit from a strong and vibrant Java ecosystem:
    • Java is powered by Oracle - one of the leaders in the industry. Java also gets enormous support from big technology companies like IBM, Google, Redhat,… so it has been always evolving over the years.
    • There are a lot of open source libraries which you can choose for building your applications.
    • There are many superior tools and IDEs that makes your Java development easier.
    • There are many frameworks that help you build highly reliable applications quickly.
    • The community around Java technology is very big and mature, so that you can get support easily.
Robust:
  • Java makes an effort to eliminate error prone codes by emphasizing mainly on compile time error checking and runtime checking. But the main areas which Java improved were Memory Management and mishandled Exceptions by introducing automatic Garbage Collector and Exception Handling.
Secure:
  • The Java platform is designed with security features built into the language and runtime system such as static type-checking at compile time and runtime checking (security manager), which let you creating applications that can’t be invaded from outside. You never hear about viruses attacking Java applications.
Multi Threading:
  • Java multithreading feature makes it possible to write program that can do many tasks simultaneously. Benefit of multithreading is that it utilizes same memory and other resources to execute multiple threads at the same time, like While typing, grammatical errors are checked along.
Architectural Neutral:


  • Compiler generates bytecodes, which have nothing to do with a particular computer architecture, hence a Java program is easy to intrepret on any machine.
Portable:

  • Java Byte code can be carried to any platform. No implementation dependent features. Everything related to storage is predefined, example: size of primitive data types.
High Performance:
  • Java is faster than traditional interpretation since byte code is "close" to native code still somewhat slower than a compiled language (e.g., C++).
Interpreted:

  • The Java compiler generates byte-codes, rather than native machine code. To actually run a Java program, you use the Java interpreter to execute the compiled byte-codes. Java byte-codes provide an architecture-neutral object file format. The code is designed to transport programs efficiently to multiple platforms.
    • Rapid turn-around development
    • Software author is protected, since binary byte streams are downloaded and not the source code
Distributed:

  • Java is called as Distributed language for construct applications on networks which can contribute both data and programs. Java applications can open and access remote objects on Internet easily. That means multiple programmers at multiple remote locations to work together on single task.
Dynamic:
  • Java is also dynamic language. Java is capable of dynamically linking in new class, libraries, methods and objects. Java can also establish the type of class through the query building it possible to either dynamically link or abort the program, depending on the reply. Java program is support functions written in other language such as C and C++, known as native methods.
Previous
Next Post »