What is it?
How to implement
// interface
interface Animal {
public void animalSound(); // interface method (does not have a body)
public void sleep(); // interface method (does not have a body)
}
// Pig "implements" the Animal interface
class Pig implements Animal {
public void animalSound() {
// The body of animalSound() is provided here
System.out.println("The pig says: wee wee");
}
public void sleep() {
// The body of sleep() is provided here
System.out.println("Zzz");
}
}
class MyMainClass {
public static void main(String[] args) {
Pig myPig = new Pig(); // Create a Pig object
myPig.animalSound();
myPig.sleep();
}
}
// Implementing multiple
implemented (similar to inheritance extends) to other classes
Benefits
abstract.
abstract methods (methods with an empty body) or concrete methodsstatic and final. This means you can assign an interface fields and access them, but they’ll be constances. You can’t change them.Serializable, Feedable.