Given the main class Dog, subclass Poodle, and the beginning of the subclass Pug: Instructions for Pug.java Variables: int flabCount – the count of layers on the Pug An invalid value should default this field to 25. A value is invalid if it is nonpositive. boolean isPound – whether this Pug resides in the pound. Poodle bestFriend- a Poodle who is the best friend with the Pug Constructors: A constructor that takes in name, length, weight, stripeCount, isSaltwater, and bestFriend. The bestFriend argument should be deep copied. A constructor that takes in no parameters and sets name to “Pluto”, length to 30.0, weight to 320.0, stripeCount to 14, isPound to false, and bestFriend to null. A copy constructor that deep copies all necessary instance fields. Methods: migrate The pug moves to the opposite kind of living situation if and only if it does not have a best friend. For example, if this pug were now in a pound and it has a best friend, it would not migrate to a house but instead stay in the pound. toString Overrides the corresponding method in its super class, such that a String with the following format is returned without trailing or leading whitespace. “I’m a talking dog named . My length is ft in and my weight is lbs oz. I’m a {pound/house} pug with layers. I have {no best friend/a best friend} named }.” No getters or setters should be written. 1. Would I do the below to set the default for flabCount? if(int flabCount < 0) this.flabcount = 25? 2. Am I creating the migrate method correctly and if so, how would I go about creating the toString method and calling a name from Poodle for it? 3. Is that the correct notation to deep copy bestFriend and is there anything else that needs fixing to match the instructions?
Given the main class Dog, subclass Poodle, and the beginning of the subclass Pug: Instructions for Pug.java Variables: int flabCount – the count of layers on the Pug An invalid value should default this field to 25. A value is invalid if it is nonpositive. boolean isPound – whether this Pug resides in the pound. Poodle bestFriend- a Poodle who is the best friend with the Pug Constructors: A constructor that takes in name, length, weight, stripeCount, isSaltwater, and bestFriend. The bestFriend argument should be deep copied. A constructor that takes in no parameters and sets name to “Pluto”, length to 30.0, weight to 320.0, stripeCount to 14, isPound to false, and bestFriend to null. A copy constructor that deep copies all necessary instance fields. Methods: migrate The pug moves to the opposite kind of living situation if and only if it does not have a best friend. For example, if this pug were now in a pound and it has a best friend, it would not migrate to a house but instead stay in the pound. toString Overrides the corresponding method in its super class, such that a String with the following format is returned without trailing or leading whitespace. “I’m a talking dog named . My length is ft in and my weight is lbs oz. I’m a {pound/house} pug with layers. I have {no best friend/a best friend} named }.” No getters or setters should be written. 1. Would I do the below to set the default for flabCount? if(int flabCount < 0) this.flabcount = 25? 2. Am I creating the migrate method correctly and if so, how would I go about creating the toString method and calling a name from Poodle for it? 3. Is that the correct notation to deep copy bestFriend and is there anything else that needs fixing to match the instructions?
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
Given the main class Dog, subclass Poodle, and the beginning of the subclass Pug:
Instructions for Pug.java
Variables:
- int flabCount – the count of layers on the Pug
- An invalid value should default this field to 25.
- A value is invalid if it is nonpositive.
- boolean isPound – whether this Pug resides in the pound.
- Poodle bestFriend- a Poodle who is the best friend with the Pug
Constructors:
- A constructor that takes in name, length, weight, stripeCount, isSaltwater, and bestFriend.
- The bestFriend argument should be deep copied.
- A constructor that takes in no parameters and sets name to “Pluto”, length to 30.0, weight to 320.0, stripeCount to 14, isPound to false, and bestFriend to null.
- A copy constructor that deep copies all necessary instance fields.
Methods:
- migrate
- The pug moves to the opposite kind of living situation if and only if it does not have a best friend.
- For example, if this pug were now in a pound and it has a best friend, it would not migrate to a house but instead stay in the pound.
- toString
- Overrides the corresponding method in its super class, such that a String with the following format is returned without trailing or leading whitespace.
- “I’m a talking dog named <name>. My length is <feet> ft <inches> in and my weight is <pounds> lbs <ounces> oz. I’m a {pound/house} pug with <flabCount> layers. I have {no best friend/a best friend} named <bestFriendName>}.”
- No getters or setters should be written.
1. Would I do the below to set the default for flabCount?
if(int flabCount < 0)
this.flabcount = 25?
2. Am I creating the migrate method correctly and if so, how would I go about creating the toString method and calling a name from Poodle for it?
3. Is that the correct notation to deep copy bestFriend and is there anything else that needs fixing to match the instructions?
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 6 steps
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
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education