please help with java questionsJAVA CODEplease check my code and.pdf
1. please help with java questions
JAVA CODE
please check my code and help my questions
CLASS ADDRESS
public class Address{
private int streetNumber;
private String streetName;
private String city;
private String state;
private String country;
// streetNumber
// streetName
// city
// state
// country
public Address(int streetNumber, String streetName, String city, String state, String country) {
this.streetNumber = streetNumber;
this.streetName = streetName;
this.city = city;
this.state = state;
this.country = country;
}
//return the streetNumber
public int getStreetNumber() {
return streetNumber;
2. }
// set street number
public void setStreetNumber(int streetNumber) {
this.streetNumber = streetNumber;
}
//return the streetName
public String getStreetName() {
return streetName;
}
// set street name
public void setStreetName(String streetName) {
this.streetName = streetName;
}
//return the city
public String getCity() {
return city;
}
//set the city
public void setCity(String city) {
this.city = city;
}
3. //return the state
public String getState() {
return state;
}
//the state to set
public void setState(String state) {
this.state = state;
}
// return the country
public String getCountry() {
return country;
}
// tset country
public void setCountry(String country) {
this.country = country;
}
// see java.lang.Object#toString()
@Override
public String toString() {
return " [streetNumber=" + streetNumber + ", streetName=" + streetName
4. + ", city=" + city + ", state=" + state + ", country="
+ country + "]";
}
}
////////////////////////////////////////////////////////////////////////////////////////
CLASS PERSON
public class Person extends Address {
private String name;
public Person (int streetNumber, String streetName, String city, String state, String country,
String name) {
super(streetNumber, streetName, city, state, country);
this.name = name;
}
//retuurn name
public String getName() {
return name;
}
// set name
public void setName(String name) {
this.name = name;
}
//see java.lang.Object#toString()
@Override
public String toString() {
return "Person [name=" + name + ", getStreetNumber()="
+ getStreetNumber() + ", getStreetName()=" + getStreetName()
5. + ", getCity()=" + getCity() + ", getState()=" + getState()
+ ", getCountry()=" + getCountry() + ", toString()="
+ super.toString() + ", getClass()=" + getClass()
+ ", hashCode()=" + hashCode() + "]";
}
}
/////////////////////////////////////////////////////////////////
CLASS STUDENT
import java.util.ArrayList;
import java.util.List;
public class Student extends Person {
private String CIN;
List courses;
public Student(int streetNumber, String streetName, String city, String state, String country,
String name, String CIN) {
super(streetNumber, streetName, city, state, country, name);
// Auto-generated constructor stub
this.CIN = CIN;
courses = new ArrayList();
}
// reutrn cin
public String getCIN() {
return CIN;
}
// set cin
public void setCIN(String cIN) {
CIN = cIN;
9. this.identifier = identifier;
}
// return cousetitle
public String getCourseTitle() {
return courseTitle;
}
// courseTitle
// set consetitle
public void setCourseTitle(String courseTitle) {
this.courseTitle = courseTitle;
}
// @see java.lang.Object#toString()
@Override
public String toString() {
return "Course [identifier=" + identifier + ", courseTitle="
+ courseTitle + "]";
}
}
////////////////////////////////////////////////
MY QUESTION IS
why address class and person class
keep telling me that THE TYPE ADDRESS(PERSON) is alredy defined
and how to fix it
and
can you help me to do Drive Class
Write a Driver class that maintains lists of Students, Courses, and FacultyMembers and has a
menu that provides ways to list them and to create them and add them to the list. Provide ways to
delete Students and FacultyMembers and for Students and FacultyMembers to add and delete
Courses from their course schedules. However, you do not need to provide a way to delete a
10. Course from the list of Courses.
Include a method that can be called from main that will use your methods to add and delete some
hard-coded test data (several students, several faculty members, and several courses.) This will
let you code the lists and test the methods to add and delete items without using the user input
functions.
Do not create a new Course when a Student adds or when a faculty member is assigned to teach;
let the user choose a Course from the list.
Solution
You have provided an extra parameter to the constructor of Address in FacultyMember class.
It should be
super(streetNumber, streetName, city, state, country);
not
super(streetNumber, streetName, city, state, country, name);
as the Address class takes only 5 parameters.
And your driver class should look like below
import java.util.List;
public class Driver {
List students;
List courses;
List facultyMembers;
//Add
public void addStudent(Student s){
students.add(s);
}
public void addCourse(classCourse c){
courses.add(c);
}
public void addFacultyMember(FacultyMember f){
facultyMembers.add(f);
}
//Delete
public void deleteStudent(Student s){
11. students.remove(s);
}
public void deleteCourse(classCourse c){
courses.remove(c);
}
public void deleteFacultyMember(FacultyMember f){
facultyMembers.remove(f);
}
//Show
public void showStudents(){
for (Student s : students) {
System.out.println(s.getName());
}
}
public void showCourses(){
for (classCourse c : courses) {
System.out.println(c.getClass());
}
}
public void showFacultyMembers(){
for (FacultyMember f : facultyMembers) {
System.out.println(f.getName());
}
}
}
and in the Main function you can add Hard coded values to test the class.