Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

In Java Create an ApartmentException class whose constructor receives a String t

ID: 3832257 • Letter: I

Question

In Java Create an ApartmentException class whose constructor receives a String that hold a street address, and apartment number, a number of bedrooms, and a rent value for an apartment.
Save the file as ApartmentExeception.Java Create an Apartment class with those fields. The Apartment constructor requires values for each field. Upon construction, throw an ApartmentException
if the aprtment number does not consist of three digits, if the number of bedrooms is less than 1 or more than 4, or if rent is less than $500 or over $2,500. Save the class as Apartment.java.
Write an application that establishes an array of at least six Apartment objects with valid and invalid values. Display an appropriate message when an Apartment object is created successfuly and
when one is not. Save the file as ThrowApartmentException.java.

Explanation / Answer

PROGRAM CODE:

Apartment.java

package array;

public class Apartment {

  

   private String streetAddress;

   private int apartmentNumber;

   private int bedrooms;

   private double rent;

  

   //constructor

   public Apartment(String addr, int number, int numbeds, double rentValue) {

      

       setStreetAddress(addr);

       setApartmentNumber(number);

       setBedrooms(numbeds);

       setRent(rentValue);

   }

   public String getStreetAddress() {

       return streetAddress;

   }

   public void setStreetAddress(String streetAddress) {

       this.streetAddress = streetAddress;

   }

   public int getApartmentNumber() {

       return apartmentNumber;

   }

   public void setApartmentNumber(int apartmentNumber) {

       if(apartmentNumber>=100 && apartmentNumber<=999)

           this.apartmentNumber = apartmentNumber;

       else throw new ApartmentExeception(String.valueOf(apartmentNumber));

   }

   public int getBedrooms() {

       return bedrooms;

   }

   public void setBedrooms(int bedrooms) {

       if(bedrooms<1 || bedrooms>4)

           throw new ApartmentExeception(String.valueOf(bedrooms));

       else

       this.bedrooms = bedrooms;

   }

   public double getRent() {

       return rent;

   }

   public void setRent(double rent) {

       if(rent<500 || rent >2500)

           throw new ApartmentExeception(String.valueOf(rent));

       else

       this.rent = rent;

   }

  

   @Override

   public String toString() {

       // TODO Auto-generated method stub

       return "Apartment: " + streetAddress + ", ApartmentNumber=" +apartmentNumber + ", Bedrooms=" + bedrooms + ", Rent=$" + rent;

   }

}

ApartmentExeception.java

package array;

public class ApartmentExeception extends RuntimeException{

   private String message;

   @Override

   public String getMessage() {

       // TODO Auto-generated method stub

       return message;

   }

   public ApartmentExeception(String message) {

       this.message = "Invalid input: " + message;

   }

}

ThrowApartmentException.java

package array;

public class ThrowApartmentException {

   public static void main(String[] args) {

       Apartment apartment[] = new Apartment[6];

       System.out.println("Constructing apartment: ");

       try

       {

           apartment[0] = new Apartment("Lincoln Lane", 12, 3, 600);

           System.out.println("Apartment created succesfully");

       }

       catch(ApartmentExeception ae)

       {

           System.out.println(ae.getMessage());

       }

       try

       {

           apartment[1] = new Apartment("Main Lane", 123, 2, 1000);  

           System.out.println("Apartment created succesfully");

       }

       catch(ApartmentExeception ae)

       {

           System.out.println(ae.getMessage());

       }

       try

       {

           apartment[2] = new Apartment("Westin Avenue", 145, 5, 1300);

           System.out.println("Apartment created succesfully");

       }

       catch(ApartmentExeception ae)

       {

           System.out.println(ae.getMessage());

       }

       try

       {

           apartment[3] = new Apartment("Phoenix Flyway", 156, 3, 200);

           System.out.println("Apartment created succesfully");

       }

       catch(ApartmentExeception ae)

       {

           System.out.println(ae.getMessage());

       }

       try

       {

           apartment[4] = new Apartment("Cross roads", 133, 3, 1900);

           System.out.println("Apartment created succesfully");

       }

       catch(ApartmentExeception ae)

       {

           System.out.println(ae.getMessage());

       }

       try

       {

           System.out.println("Apartment created succesfully");

           apartment[5] = new Apartment("Greems Road", 324, 4, 2100);

       }

       catch(ApartmentExeception ae)

       {

           System.out.println(ae.getMessage());

       }

       System.out.println(" Revealing apartments: ");

       for(int i=0; i<6; i++)

       {

           if(apartment[i] == null)

               System.out.println("Apartment not constructed");

           else

           System.out.println(apartment[i]);

       }

   }

}

OUTPUT:

Constructing apartment:

Invalid input: 12

Apartment created succesfully

Invalid input: 5

Invalid input: 200.0

Apartment created succesfully

Apartment created succesfully

Revealing apartments:

Apartment not constructed

Apartment: Main Lane, ApartmentNumber=123, Bedrooms=2, Rent=$1000.0

Apartment not constructed

Apartment not constructed

Apartment: Cross roads, ApartmentNumber=133, Bedrooms=3, Rent=$1900.0

Apartment: Greems Road, ApartmentNumber=324, Bedrooms=4, Rent=$2100.0

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote