âš¡ PROBLEMS to be answeredHomework 1 Objects - Pick one of the following scenarios and model using at least 7 classes: one parent, two children, two grandchildren of one of the child classes, and 2 other classes in a has-some or has-a relationship with some of the previous 5 classes. The parent-child relationship is an inheritance (is-a) relationship. Provide at least one typed instance variable and one method that compellingly differentiates each class from the others. Make sure to include the return type and the types of the arguments for any method being proposed. Do not include constructors, getters, setters, or any no argument methods in your description. Do not use the same example as previous posters. Scenarios - lots of them spring to mind, but I don't want the list to be too long. In this way, you can compare your ideas with those of other students, and I encourage to consider what other students have posted, you are also encouraged to make suggestions of other's postings and make additional postings updating your own ideas in light of the suggestions by others. An airplaneA trainAn e-commerce company (eg, Amazon)A city governmentAn airline (aspects of an entire company)A government organization (eg, EPA, Defense)NOTE: A general is not a kind of private, nor is a private a kind of general, for example.Also, a general is not a kind of Defense DepartmentTHUS: not all hierarchies are class hierarchies! Note: This problem is NOT asking for a full implementation of these classes - a UML diagram, or similar level of detail, is adequate. You will find many of the items in the following helpful: http://sandsduchon.org/duchon/Musings/a/index.html I would emphasize the following kinds of relationships among classes: is-a parent/child relationship in a class hierarchy perhaps better to use the phrase "is a kind of", as in "a Private is a kind of Soldier" or "a SportsCar is a kind of Car" is-some a data structure in which all the elements have the same type. This is the place where one should use generic classes. has-a an attribute (field) of one class inside another has-some a 1-to-n relationship, a Vehicle will have one or more Occupant instance âš¡ PROBLEMS to be answered For problems 1 through 4, explain why the code as shown is almost certainly not what the programmer intended, and how it should be fixed to work the way the programmer probably had in mind. 1. (10 pts) What is wrong with the following program and how should it be fixed? 1 public class MyClassA { 2 int v = 12; 3 4 public MyClassA (int pV) { 5 v = pV; 6 } 7 8 public static void main (String args []) { 9 MyClassA m = new MyClassA (); 10 } // end main 11 } // end class MyClassA 2. (10 pts) What is wrong with the following program and how should it be fixed? 1 public class MyClassB { 2 int v = 12; 3 4 public void MyClassB (int pV) { 5 v = pV; 6 } 7 8 public static void main (String args []) { 9 MyClassB m = new MyClassB (23); 10 } // end main 11 } // end class MyClassB 3. (10 pts) What is wrong with the following program and how should it be fixed? 1 public class MyClassD { 2 public static void main (String args []) { 3 MyClassC m = new MyClassC (23); 4 } // end main 5 } // end class MyClassD 6 7 class MyClassC { 8 int v = 12; 9 10 public MyClassC (int pV) { 11 int v = pV; 12 } 13 14 } // end class MyClassC 4. (10 pts) What is wrong with the following program and how should it be fixed? 1 public class MyClassE { 2 public static void main (String args []) { 3 MyClassF m = new MyClassF (23); 4 } // end main 5 } // end class MyClassE 6 7 class MyClassF { 8 int v = 12; 9 10 private MyClassF (int pV) { 11 v = pV; 12 } 13 14 } // end class MyClassF 5. (10 pts) Given all the problems identified in problems 1 through 4, explain in detail why the following code works, ie, compiles without errors or warnings. 1 public class MyClassG { 2 public static void main (String args []) { 3 MyClassH m = new MyClassH (23, true); 4 } // end main 5 } // end class MyClassG 6 7 class MyClassH { 8 int v = 12; 9 10 public MyClassH (int x, boolean b) { 11 this (x); 12 } 13 14 private MyClassH (int pV) { 15 v = pV; 16 } 17 18 } // end class MyClassH 6. (10 pts) Explain why the following class hierarchy is not reasonable: DefenseDepartment General Private 7. (10 pts) Give at least one example of a reasonable field for each of the following classes in the following class hierarchy. Be sure that the field is at the right level in the hierarchy. Vehicle Car Airplane Passenger Fighter Bomber SpaceShip 8. (10 pts) Give at least one example of a reasonable method for each of the following classes in the following class hierarchy. Be sure that the method is at the right level in the hierarchy. Constructors, getters and setters don't count for this problem. Vehicle Car Airplane Passenger Fighter Bomber SpaceShip 9. (10 pts) Are a Private and a Platoon in an encapsulation or an inheritance relationship? Explain 10. (10 pts) Present reasonable parent and child classes for the class Tree (the biological kind). Give a short explanation for why the classes you are proposing are in good parent-child relationships. Grading Rubric: Attribute Meets Does not meet Problem 1 10 points Explains why the code as shown is almost certainly not what the programmer intended. Explains how it should be fixed to work the way the programmer probably had in mind. 0 points Does not explain why the code as shown is almost certainly not what the programmer intended. Does not explain how it should be fixed to work the way the programmer probably had in mind. Problem 2 10 points Explains why the code as shown is almost certainly not what the programmer intended. Explains how it should be fixed to work the way the programmer probably had in mind. 0 points Does not explain why the code as shown is almost certainly not what the programmer intended. Does not explain how it should be fixed to work the way the programmer probably had in mind. Problem 3 10 points Explains why the code as shown is almost certainly not what the programmer intended. Explains how it should be fixed to work the way the programmer probably had in mind. 0 points Does not explain why the code as shown is almost certainly not what the programmer intended. Does not explain how it should be fixed to work the way the programmer probably had in mind. Problem 4 10 points Explains why the code as shown is almost certainly not what the programmer intended. Explains how it should be fixed to work the way the programmer probably had in mind. 0 points Does not explain why the code as shown is almost certainly not what the programmer intended. Does not explain how it should be fixed to work the way the programmer probably had in mind. Problem 5 10 points Given all the problems identified in problems 1 through 4, explains in detail why the code works, ie, compiles without errors or warnings. 0 points Given all the problems identified in problems 1 through 4, does not explain in detail why the code works, ie, compiles without errors or warnings. Problem 6 10 points Explains why the class hierarchy is not reasonable. 0 points Does not explain why the class hierarchy is not reasonable. Problem 7 10 points Gives at least one example of a reasonable field for each of the classes. The field is at the right level in the hierarchy. 0 points Does not give at least one example of a reasonable field for each of the classes. The field is not at the right level in the hierarchy. Problem 8 10 points Gives at least one example of a reasonable method for each of the classes. The method is at the right level in the hierarchy. Does not include constructors, getters and setters. 0 points Does not give at least one example of a reasonable method for each of the classes. The method is not at the right level in the hierarchy. Includes constructors, getters and setters. Problem 9 10 points Explains inheritance and encapsulation correctly and in sufficient detail given the example provided. 0 points Does not explain inheritance and encapsulation correctly and in sufficient detail given the example provided. Problem 10 10 points Presents reasonable parent and child classes for the class Tree. Gives a short explanation for why the classes you are proposing are in good parent-child relationships. 0 points Does not present reasonable parent and child classes for the class Tree. Does not give a short explanation for why the classes you are proposing are in good parent-child relationships.