its all juts one question but with different parts, i want to confirm some stuff
1. Suppose you have a Java class called Person satisfying the following specifications: A Person object cannot be created without a Person being a more specific type of Person. A Person has a name (a String) and an age (a non-negative int). The class variables (data fields) for these are called name and age respectively. The Person class keeps track of the total number of people (number of instances of Person) the program has created in a variable called population. It also has a get method for population The constructor for Person (which is public) takes as parameters the name and age of the Person (in that order) and initialize its name and age fields to these. If the class user tries to set the age to a negative number, then it throws an IllegalArgumentException. The constructor must also update variable population because a new person is being created The class user can view a Person's name (using a get method), but they cannot modify a Person's name. The class user can view and modify the age of a person though a get and a set method for it. If the class user tries to set the age to a negative number, then the set method throws an IllegalArgumentException. The Person class has a method called favoriteInt() that returns the person's favorite integer (an int). This method may be overridden by subclasses of Person. Its default implementation (the one in the Person class) returns 100 minus the age of the person. The Person class does not extend or implement any other data type (except for Object, because this is the default). (a) (4 points) Should class Person be abstract or not? Explain your reasoning. (b) (4 points) Should the data field population be static or non-static? Explain your rea- soning, (c) (4 points) Should the get method for name be static or non-static? Explain your reason- (d) (4 points) Should the data field age be public or private? Explain your reasoning. (e) (4 points) Can the data field name be declared final? Explain your reasoning. (1) (4 points) Can method favoriteInt() be declared final? Explain why or why not. (g) (10 points) Write the constructor for class Person. (Write your code in your file for this exam)