In: Computer Science
Inheritance – Address, PersonAddress, BusinessAddress Classes
Assignment
Download the Lab6.zip starter file. Use 7zip to unzip the file using ‘Extract Here’. Open the project folder in IntelliJ.
Examine the Main and Address classes. You are going to add two classes derived from Address: BusinessAddress and PersonAddress.
Create BusinessAddress class
The printLabel method should print (using System.out.println()) // Here is the 1st place I'm getting stuck ?? All I did was create the BusinessAddress class. I appreciate your assistance
First line – the businessName field
Second line – the address2 field if it is not null or empty
Third line – the StreetAddress field if it is not null or empty
Fourth line – city field followed by a comma and space, the state field followed by two spaces, and the zip field
Create PersonAddress class
The printLabel method should print (using System.out.println())
First line – the personName field
Second line – the StreetAddress field
Third line – city field followed by a comma and space, the state field followed by two spaces, and the zip field
Modify Main class
Add the following three BusinessAddress objects to the list.
BusinessName |
Address2 |
StreetAddress |
City |
State |
Zip |
Columbus State |
Eibling 302B |
550 East Spring St. |
Columbus |
OH |
43215 |
AEP |
P.O. Box 2075 |
null |
Columbus |
OH |
43201 |
Bill’s Coffee |
null |
2079 N. Main St. |
Columbus |
OH |
43227 |
Add the following three PersonAddress objects to the list.
PersonName |
StreetAddress |
City |
State |
Zip |
Saul Goodman |
1200 N. Fourth St. |
Worthington |
OH |
43217 |
Mike Ehrmentraut |
207 Main St. |
Reynoldsburg |
OH |
43211 |
Gustavo Fring |
2091 Elm St. |
Pickerington |
OH |
43191 |
Example Output
Columbus State
Eibling 302B
550 East Spring St.
Columbus, OH 43215
====================
AEP
P.O. Box 2075
Columbus, OH 43201
====================
Bill's Coffee
2079 N. Main St.
Columbus, OH 43227
====================
Saul Goodman
1200 N. Fourth St.
Worthington, OH 43217
====================
Mike Ehrmentraut
207 Main St.
Reynoldsburg, OH 43211
====================
Gustavo Fring
2091 Elm St.
Pickerington, OH 43191
====================
public class Main { public static void main(String[] args) { Address[] addressList = new Address[6]; // TODO Add 3 person addresses to list // TODO Add 3 business address to list for (Address address : addressList) { address.printLabel(); System.out.println("===================="); } } }
public abstract class Address { private String streetAddress; private String city; private String state; private String zip; public Address(String streetAddress, String city, String state, String zip) { this.streetAddress = streetAddress; this.city = city; this.state = state; this.zip = zip; } public String getStreetAddress() { return streetAddress; } public void setStreetAddress(String streetAddress) { this.streetAddress = streetAddress; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getState() { return state; } public void setState(String state) { this.state = state; } public String getZip() { return zip; } public void setZip(String zip) { this.zip = zip; } public String toString() { return streetAddress + "\n" + city + ", " + state + " " + zip + "\n"; } public abstract void printLabel(); }
public class BusinessAddress extends Address { private String businessName; private String address2; public BusinessAddress(String streetAddress, String city, String state, String zip, String businessName, String address2) { super(streetAddress, city, state, zip); this.businessName = businessName; this.address2 = address2; } public String getBusinessName() { return businessName; } public void setBusinessName(String businessName) { this.businessName = businessName; } public String getAddress2() { return address2; } public void setAddress2(String address2) { this.address2 = address2; } public void printLabel() { } }
public class Main {
public static void main(String[] args) {
Address[] addressList = new Address[6];
// TODO Add 3 business address to list
Address add1=new BusinessAddress("550 East Spring
St.","Columbus","OH","43215","Columbus State","Eibling
302B");
Address add2=new
BusinessAddress(null,"Columbus","OH","43201","AEP","P.O. Box
2075");
Address add3=new BusinessAddress("2079 N. Main
St.","Columbus","OH","43227","Bill’s Coffee",null);
// TODO Add 3 person addresses to list
Address add4=new PersonAddress("1200 N. Fourth
St.","Worthington","OH", "43217", "Saul Goodman");
Address add5=new PersonAddress("207 Main St.","Reynoldsburg","OH",
"43211", "Mike Ehrmentraut");
Address add6=new PersonAddress("2091 Elm St.","Pickerington","OH",
"43191", "Gustavo Fring");
addressList[0]=add1;
addressList[1]=add2;
addressList[2]=add3;
addressList[3]=add4;
addressList[4]=add5;
addressList[5]=add6;
for (Address address : addressList) {
address.printLabel();
System.out.println("====================");
}
}
}
public class BusinessAddress extends Address{
private String businessName;
private String address2;
public BusinessAddress(String streetAddress, String city, String
state, String zip, String businessName, String address2) {
super(streetAddress, city, state, zip);
this.businessName = businessName;
this.address2 = address2;
}
public String getBusinessName() {
return businessName;
}
public void setBusinessName(String businessName) {
this.businessName = businessName;
}
public String getAddress2() {
return address2;
}
public void setAddress2(String address2) {
this.address2 = address2;
}
public void printLabel() {
String toprint=this.getBusinessName();
if(this.getAddress2()!=null &&
this.getAddress2()!=""){
toprint+="\n"+this.getAddress2();
}
if(this.getStreetAddress()!=null &&
this.getStreetAddress()!=""){
toprint+="\n"+this.getStreetAddress();
}
toprint+="\n"+this.getCity()+", "+this.getState()+"
"+this.getZip();
System.out.println(toprint);
}
}
public class PersonAddress extends Address{
private String personName;
public PersonAddress(String streetAddress, String
city, String state, String zip,String name) {
super(streetAddress, city, state,
zip);
this.personName=name;
}
public String getPersonName() {
return personName;
}
public void setPersonName(String personName) {
this.personName = personName;
}
@Override
public void printLabel() {
// TODO Auto-generated method
stub
String
toprint=this.getPersonName();
toprint+="\n"+this.getStreetAddress();
toprint+="\n"+this.getCity()+",
"+this.getState()+" "+this.getZip();
System.out.println(toprint);
}
}
public abstract class Address {
private String streetAddress;
private String city;
private String state;
private String zip;
public Address(String streetAddress, String city, String state,
String zip) {
this.streetAddress = streetAddress;
this.city = city;
this.state = state;
this.zip = zip;
}
public String getStreetAddress() {
return streetAddress;
}
public void setStreetAddress(String streetAddress) {
this.streetAddress = streetAddress;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getZip() {
return zip;
}
public void setZip(String zip) {
this.zip = zip;
}
public String toString() {
return streetAddress + "\n" +
city + ", " + state + " " + zip + "\n";
}
public abstract void printLabel();
}
Expected output: