Abir Hasnat
161-15-6789
.
Interfaces
 An interface in Java, is essentially an pure abstract class - all methods are abstract.
 Interface can specify what a class must do, but not how it
does it.
 An interface defines a set of methods but does not implement them.
 One Class can implement many interfaces
 One interface can be implemented by many classes
Why is an interface?
 This makes a static and non-extensible classing environment –
 because the mechanism gets pushed up higher and higher in the class hierarchy.
 Interfaces avoid this problem by disconnecting the definition of a method from
inheritance hierarchy.
 Support multiple inheritance –
 many interface can being combined in one class
Why is an interface?(cont)
 Normally, in order for a method to be called from one class to another, both classes need to
be present at compile time so the Java compiler can check to ensure that the method
signatures are compatible.
 In a system like this, functionality gets pushed up higher and higher in the class hierarchy so
that the mechanisms will be available to more and more subclasses.
 Interfaces are designed to avoid this problem.
 Interfaces are designed to support dynamic method resolution at run time.
Multiple Inheritance
Multiple Inheritance

Interface

  • 1.
  • 2.
    Interfaces  An interfacein Java, is essentially an pure abstract class - all methods are abstract.  Interface can specify what a class must do, but not how it does it.  An interface defines a set of methods but does not implement them.  One Class can implement many interfaces  One interface can be implemented by many classes
  • 3.
    Why is aninterface?  This makes a static and non-extensible classing environment –  because the mechanism gets pushed up higher and higher in the class hierarchy.  Interfaces avoid this problem by disconnecting the definition of a method from inheritance hierarchy.  Support multiple inheritance –  many interface can being combined in one class
  • 4.
    Why is aninterface?(cont)  Normally, in order for a method to be called from one class to another, both classes need to be present at compile time so the Java compiler can check to ensure that the method signatures are compatible.  In a system like this, functionality gets pushed up higher and higher in the class hierarchy so that the mechanisms will be available to more and more subclasses.  Interfaces are designed to avoid this problem.  Interfaces are designed to support dynamic method resolution at run time.
  • 5.
  • 6.