When a class implements an interface, you can think of the class as signing a contract, agreeing to perform the specific behaviors of the interface. If a class does not perform all the behaviors of the interface, the class must declare itself as abstract.
A class uses the implements keyword to implement an interface. The implements keyword appears in the class declaration following the extends portion of the declaration.
/* File name : MammalInt.java */
public class MammalInt implements Animal{
public void eat(){
System.out.println("Mammal eats");
}
public void travel(){
System.out.println("Mammal travels");
}
public int noOfLegs(){
return 0;
}
public static void main(String args[]){
MammalInt m = new MammalInt();
m.eat();
m.travel();
}
}This would produce the following result:
Mammal eats
Mammal travelsWhen overriding methods defined in interfaces there are several rules to be followed:
·
Checked exceptions should not be declared on
implementation methods other than the ones declared by the interface method or
subclasses of those declared by the interface method.
·
The signature of the interface method and the
same return type or subtype should be maintained when overriding the methods.
·
An implementation class itself can be abstract
and if so interface methods need not be implemented.
When implementation interfaces there are several rules:
·
A class can implement more than one interface at
a time.
·
A class can extend only one class, but implement
many interfaces.
·
An interface can extend another interface, similarly
to the way that a class can extend another class.
No comments:
Post a Comment