Question: Our goal is to learn about inheritance in a Java program, so we will create 6 classes (in addition to the provided tester class): Animal

Our goal is to learn about inheritance in a Java program, so we will create 6 classes (in addition to the provided tester class):

Animal

public class Animal

{

//TODO: private member variables

public Animal( String soundMade, boolean hasLegs, boolean hasWings, boolean hasGills )

copy the input parameters to private member variables

public String getSoundMade()

return the value of the corresponding private member variable

public boolean hasLegs()

return the value of the corresponding private member variable

public boolean hasWings()

return the value of the corresponding private member variable

public boolean hasGills()

return the value of the corresponding private member variable

public int numberOfLegs()

throw a RuntimeException indicating that we don't know

public int numberOfWings()

throw a RuntimeException indicating that we don't know

public void breatheUnderwater()

throw a RuntimeException indicating that we don't know if the animal can

Dog

Cat

Bird

Fish

Fox

Finish the Animal class as indicated in the //TODO: comments For each of the other classes:

Extend from Animal

Override the following methods: numberOfLegs, numberOfWings, and breatheUnderwater. For each

animal determine if the method makes sense and if it doesnt, throw a runtime exception explaining that a cat doesnt have wings or that a dog cant breathe underwater. Since breatheUnderwater has a void return type, for any animal that can breathe under water, you dont have to do anything in that method.

Note that in Dog, Cat, Bird, Fish, and Fox there should not be any of the following methods: getSoundMade, hasLegs, hasWings, or hasGills. We want to inherit this functionality from the Animal class.

Once you have implemented your code correctly, running the tester class should produce this exact output:

Dogs have 4 legs. Cats have 4 legs. Birds have 2 legs. Birds have 2 wings. Fish can breathe under water. Foxes have 4 legs.

Attempting things we shouldn't... Dogs don't have wings! Dogs can't breathe under water! Cats don't have wings!

Cats can't breathe under water! Birds can't breathe under water! Fish don't have legs! Fish don't have wings!

Foxes don't have wings! Foxes can't breathe under water!

Dog goes woof Cat goes meow Bird goes tweet Fish goes blub What does the fox say? Ring-ding-ding-ding-dingeringeding!

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!