What is the output of the following code? public class Inherit { abstract class Speaker { abstract public void speak(); } class Cat extends Speaker { public void speak() { System.out.println("Woof!"); } } class Dog extends Speaker { public void speak() { System.out.println("Meow!"); } } Inherit() { Speaker d = new Dog(); Speaker c = new Cat(); d.speak(); c.speak(); } public static void main(String[] args) { new Inherit(); } }