This assignment involves using inheritance, interfaces, and polymorphic behavior. All Pets have certain attributes in common…an age and a weight. Not all animals can make sounds, however. A Dog is a type of animal that makes a “bow wow” sound, and a Cat is a type of animal that makes a “meow” sound. All vehicles have certain attributes in common…a make and a year. A Car is a type of vehicle that makes a “honk honk” sound, and a Boat is a type of vehicle that makes a “toot toot” sound. All sounds will be implemented by a makeSound() method that is declared in an interface named Sounds(). Develop abstract classes for Pet and Automobile. You may decide on the methods for these classes. Develop concrete classes for Cat, Dog, Car, and Boat. Any class that is not abstract is concrete. You should have constructors (default, overloaded, copy), setters and getters, equals method and toString methods in all classes. Define a class that has a main method that creates a few objects of the above types, and stores them in a single array. You will have to determine the type of that array. Then, the main method should simply iterate through the array and invoke the makeSound() method for each element (that is where the polymorphic behavior comes in). Please be sure to follow the course coding standards.
This assignment involves using inheritance, interfaces, and polymorphic behavior. All Pets have certain attributes in common…an age and a weight. Not all animals can make sounds, however. A Dog is a type of animal that makes a “bow wow” sound, and a Cat is a type of animal that makes a “meow” sound. All vehicles have certain attributes in common…a make and a year. A Car is a type of vehicle that makes a “honk honk” sound, and a Boat is a type of vehicle that makes a “toot toot” sound. All sounds will be implemented by a makeSound() method that is declared in an interface named Sounds(). Develop abstract classes for Pet and Automobile. You may decide on the methods for these classes. Develop concrete classes for Cat, Dog, Car, and Boat. Any class that is not abstract is concrete. You should have constructors (default, overloaded, copy), setters and getters, equals method and toString methods in all classes. Define a class that has a main method that creates a few objects of the above types, and stores them in a single array. You will have to determine the type of that array. Then, the main method should simply iterate through the array and invoke the makeSound() method for each element (that is where the polymorphic behavior comes in). Please be sure to follow the course coding standards.
Chapter11: Advanced Inheritance Concepts
Section: Chapter Questions
Problem 5PE
Related questions
Question
This assignment involves using inheritance, interfaces, and polymorphic behavior.
All Pets have certain attributes in common…an age and a weight. Not all animals can make sounds, however. A Dog is a type of animal that makes a “bow wow” sound, and a Cat is a type of animal that makes a “meow” sound.
All vehicles have certain attributes in common…a make and a year. A Car is a type of vehicle that makes a “honk honk” sound, and a Boat is a type of vehicle that makes a “toot toot” sound.
All sounds will be implemented by a makeSound() method that is declared in an interface named Sounds().
Develop abstract classes for Pet and Automobile. You may decide on the methods for these classes.
Develop concrete classes for Cat, Dog, Car, and Boat. Any class that is not abstract is concrete. You should have constructors (default, overloaded, copy), setters and getters, equals method and toString methods in all classes.
Define a class that has a main method that creates a few objects of the above types, and stores them in a single array. You will have to determine the type of that array.
Then, the main method should simply iterate through the array and invoke the makeSound() method for each element (that is where the polymorphic behavior comes in). Please be sure to follow the course coding standards.
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 9 images
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT