06-02-19 Devendra Ganta 0 comment

There are 11 features of java are as follows

  1. Simple
  2. Object oriented
  3. Distributed
  4. Portable
  5. Secure
  6. Robust (strong)
  7. Multi threaded
  8. Architecture neutral
  9. Interpreted
  10. High performance
  11. Dynamic

       These features indicates that the best performance than the ‘C’ and ‘C++’ programming languages.

       Let us know about each and every feature of java.

  1. Simple:

                Java is very easy to learning, practicing and its syntax is simple, clean and easy to understand than the C and C++.  Java language is simple because

  • Java syntax is based on C++
  • Java has removed complicated concepts like pointers, operator overloading etc.
  • If any object is not useful in the program then automatically removed it by the gc() method (garbage collection)
  1. Object oriented:

                Everything in java is an object oriented, it means we organize out software as a combination

               of different types of objects. In java object oriented programming(OOP) concepts are very

                 important .these are as follows

  • Class
  • Object
  • Inheritance
  • Polymorphism
  • Abstraction
  • Encapsulation
  • Class:

             A class is a blueprint from which objects are created. It does not physically exist.


            A class is a keyword, used to declare the class names.

        Ex: class Sample. ( here Sample is class name).

  • Object:

        An object is a real time entity and an instance of a class .instance means physically happening.

          An object will have some properties, actions and it contains variables and methods.

         Ex: class Sample


                      Sample object=new Sample();


  • Inheritance:

                  Acquiring the properties from one class to another class is called “inheritance”.

                  In this ‘extends’ keyword is used to extending the new class.


            Creating a new class from already existing class.

         Ex:  class Sample



               Sample1 extends Sample




  1.  Re-usability of code is main advantage of inheritance.
  2. In java inheritance is archived by using the keyword called “Extends”.
  • Polymorphism:

              The word polymorphism is derived from the two Greek words “poly” and “Morphos”.

              Poly means-many and morphos means -forms. Thus polymorphism represents the ability

               to assume several different forms. The ability to define more than one function with the

               same name is called “polymorphism” 

             Ex:          int add (int a, int b);

                Float add (float a, float b);

                Float add (int a, int b, int c);

  • Abstraction:

             Providing the essential features without its inner details is called as “abstraction “.


                    Showing the required details by hiding the internal implementation is called” abstraction”.

                     We can enhance the internal implementation without effecting outside world, which

                     provides security.

                    A class may contain lot of data, user does not need that much of data so showing the

                   required data to the user.

                                     Ex:   the customer wants to go ATM for withdrawing amount, then there 

                                          appears required  Options which is easy to understand by the customer.

                                          At the same time hide the Unwanted (background process) data.

  • Encapsulation:

        Encapsulation = data hiding + abstraction

        Binding (or wrapping) of data and code together into a single unit is known as                                 


      Ex: a capsule which is mixed of several medicines.


                 By providing only a setter or getter method you can make the class read only or 

                 Write only, it provide the control over the data.

  • The encapsulate class is easy to test so it is better for unit testing.
  1. Distributed:

               Java is distributed because if facilitates users to create distributed applications in java.

               It enables to access files at anywhere and any machine on the internet

  1. Portable:

            Java is portable because you can carry the java byte code to any platform. It means 

             Write a program in one system can run it another system.

  1. Secure:

              Java provides the more security, it enables the construction of virus free, tamper free systems.

  1. Robust:

           Java is strong / powerful because

  • It will not crash
  • Strong memory management feature
  • Exception handling
  • gc() method for rid of objects which are not being used in future
  1. Multithreaded:

                Executing different parts of program simultaneously is called “Multithreaded”. This is

                essential feature to design server side programs. Threads are important for multimedia,

                web applications etc.

  1. Architecture neutral:

          Java is architectural neutral because byte code is not machine dependent. It can run on

          Anywhere with any processor and with any operating system.

  • In c program ‘int’ data type occupy 2 bytes of memory for 32-bits architecture.
  • 4 bytes of memory for 64-bit architecture.
  • But in java it occupies 4 bytes of memory for both 32 and 64 bit architecture
  1. Interpreted:

                             Java programs are compiled to generate the byte code. This byte code can be

                             downloaded and interpreted by the interpreter. Class file will have byte code

                            instructed  and JVM which contain  an interpreter will execute the byte code.

  1. High performance:

                                  Java gives us high performance because along with interpreter there will be JIT

                                  (just in time) compiler which entrance the speed of execution.

  1. Dynamic:

         Java programming language is dynamic in nature. It means memory will allotted after

         writing the code. It leads to less wastage of memory.


Leave a reply