Say we have a collection of animal classes, with each class represents a kind of animal. They all share a common ability of “speak”. Dog speak in the way of “Woof! Woof!”, cats speak in the way of...


Say we have a collection of animal classes, with each class represents a kind of animal. They all share a common ability of “speak”. Dog speak in the way of “Woof! Woof!”, cats speak in the way of “Meow! Meow!”, etc. In order to capture this common characteristic, we need an interface named Speakable:




public interface Speakable


{


// put the method header here


}




Think about what method is needed for the Speakable interface? (what method can describe the speakable feature? )




We simply need one method speak() to print out the way that the animal “speaks”. Put the method header in the interface body. This method does not take any parameter and does not return any value.




Be reminded that you only need to put the method header with a semicolon (abstract method) into the interface.




BE NOTED: Adding an interface is different from adding a class. You need to click File tab -> New -> Interface, to add an interface file to the project.




Now download Dog.java. Have them implement the Speakable interface by:


- Modifying the header of each class to implement the interface.


Dog.Java


public class Dog
{
    private String name;




    public Dog(String name, int age)
    {
        this.name = name;


    }


    public String toString()
    {
        return "Dog:  " + name;
    }
}




Implementing the speak() method in each class. Take the Dog class for example:




public void speak()


{


System.out.println("Woof! Woof!");


}




Write a testing class to create a Dog object. Invoke the speak method by each object and check the output. Watch how your dog and cat can both speak

Jun 07, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here