Declaring subclasses that inherit the implementation of interfaces
We have the SocialAnimal
abstract class that implements both the Sociable
and Comparable<Sociable>
interfaces. We cannot create instances of this abstract class. Now, we will create a concrete subclass of SocialAnimal
named SocialLion
. The class declares a constructor that ends up calling the constructor defined in the superclass. The class implements the four abstract methods declared in its superclass to return the appropriate values for a lion that will participate in a party. The code file for the sample is included in the java_9_oop_chapter_10_01
folder, in the example10_01.java
file.
public class SocialLion extends SocialAnimal { public SocialLion(String name, int age) { super(name, age); } @Override public String getDanceRepresentation() { return "*-* ^\\/^ (-)"; } @Override public String getFirstSoundInWords() { return "Roar"; } @Override public...