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
.