Both the SpiderDog
and WonderCat
classes implement the DrawableInComic
interface. All the classes that inherit from the WonderCat
class, inherit the implementation of the DrawableInComic
interface. Imagine that we have to add a new method requirement to the DrawableInComic
interface and that we will create new classes that implement this new version of the interface. We will add a new drawScreamBalloon
method that draws a scream balloon, also known as scream bubble, with a message.
We will add the implementation of the new method in the SpiderDog
class. However, imagine that we cannot make changes to the code in one of the classes that implement the DrawableInComic
interface: WonderCat
. We have a big problem because as soon as we change the code for the DrawableInComic
interface, the Java compiler will generate a compile error for the WonderCat
class and we won't be able to compile this class and its subclasses.
In this scenario,...