Ads Sponsored By Google :)

Sunday 13 January 2013

what|define|definition is|of interface and abstract class in java with example|program|tutorial


interface in java what is interface in java interface in java with example example of interface in java use of interface in java interface example in java interface program in java define interface in java interface and abstract class in java interface in java tutorial interface in java examples interface in java example interfaces in java examples interfaces in java example interfaces in java with example example of interfaces in java interfaces example in java interfaces program in java

    
   Interface:
                 In java programming each and every program must start with concept called class.                
         Such that  have two classes in java. They are
                  a)      Concrete class
                  b)      Abstract class.

      Concrete class are always recommended to perform specific requirements but not   
   recommended to perform common requirements.
    By using abstract class we can achieve common requirements, then we get advantage
 over Concrete class regarding common requirements.

   By using abstract class for dealing with common requirements, we come across the following           disadvantages.
i)                    Abstract class never participates in multiple inheritance.
ii)                   Abstract class provides only common reusable features but not universal
common reusable features.
iii)                 We know that abstract class is collection of defined and undefined methods.
It is not recommended to override defined methods of abstract class and it is
recommended to override defined methods of abstract class and it is recommended to override the undefined method. i.e; abstract class containing both recommended and un recommended Features due to this we get less partial execution time.

     Definition Of Interface:
          Interface is a collection of universal  common reusable data members and universal 
          common reusable methods.
                                                                    or
              An Interface is a collection of public static final Xxx data members and public 
         abstract methods.Here Xxx represents data type, variable name, variable value.
                                                                   Or
            An Interface is a collection public static final data members and public abstract methods .
         Syntax:
             interface  <interface-name>
           {
              variable declaration with initialization;
              method declaration;
            }
         In the above syntax interface is a keyword used for developing  user defined data types.
        <interface-name> represents a java variable name treated as name of interface.

        For Example:
          interface demo-interface1
        {
          int a=10;
          int b=20;
         void fun1();
         void fun2();
       }
  
    Advantages of Interface:
     If we develop any java application then we get the following advantages.
           a)      Interface participates in mu;tiple inheritance.
           b)      Interface features are by default belongs to universal common reusable. 
           c)       Interface always provides completely less execution time because interface are purely 
                containing abstract methods and whose overhead cost of abstract method is very less. 
          d)      Hence the scope of interface is more compared to abstract classes.

Points To Remember:
1)     According to industry standards it is highly recommended to override instance
           Methods  because they are meant for performing repeated operations. But
           not recommended to override static methods because static methods are  
           meant for performing one time operations.
           2)      Abstract methods of abstract class and interface must be instance methods
          only but not static.

     Inheriting the features of interface:
   In java programming we have three approaches for inheriting the feature of interfaces into 
   derived classes / interfaces. 
     They are.
a)      Inheriting the features into class by using Implements keyword:
1)      This approach makes us to understand how to inherit the features of base class into
      derived class.
Syntax:
 [abstract] class <class-name> implements <interface-1>,<interface-2>…..<interface-n>
{
   variable declaration;
   method definition / declaration;
}
2)      Implements is a keyword used for inheriting the features of base interface into derived 
      class can implements either one or more than one interface.
Because java programming never supports the concept of multiple inheritance through 
the concept of classes, but it can supported through the concept of interfaces.

b)       Inheriting the features into another interface by using extends keyword:
                     By using this approach how to inherit the features of base interface into derived interface.
This is a interface inheritance in which inheriting features of base interface into derived 
interface is known as interface inheritance.
Syntax:
  interface <interface-name> extends <interface-name1>,<interface-name2>….<interface-name n>
{
  variable declaration with initialization;
  method declaration;
}

c)       Inheriting the features into one class from another classes and different interfaces by using extends and implements keyword:
      By using this approach we parallel inherit from single base class and from base interfaces.
Syntax:
  [abstract] class <class-name> extends <class-name 1> implements <interface 1>….<interface n>
{
 Variable declaration;
Methods definition / declaration;
}
Note: when we use extends and implements keywords in single syntax or for getting parallel inheritance, it is mandatory to java programmer to write always first extends keyword then implements keyword.

          Rules for using interface:
i)                    Interfaces are always contain universal common reusable features.
ii)                   In java programming final interface does not exists.
iii)                 Interfaces concept of java makes use of polymorphism along with method overriding 
            for business logic development and makes use of dynamic binding for execution logic.
iv)                 While we are defining interface methods must be preceded by public keyword 
            otherwise we get compile time error.
v)                  Interfaces contains only abstract instance methods but not abstract static methods.
vi)                 Interfaces concept of java does not contan constructor because of following reasons .
a)      Interface data members are already initialized.
b)      We know that constructors are special defined methods, so that defined 
     constructors are not permitted in interface
vii)               Programmatically interface objects can be declared but cannot be referenced directly 
           and they can be referenced indirectly w.r.t concrete class only.
An object of an interface is equal to an object of its sub class
An object of an interface is equal to an object of that class which will implement that interface.
An object of sub class of interface is an object of an interface.

     

No comments:

Post a Comment

LinkWithin