Java

OOP GUIDE / WORK

 

ROOM CLASS SOLUTIONS

 

TASK – PART 1 – ROOM CLASS

 

Here is my solution:

 

 

public class Room

{

      private int roomNo;

      private String roomType;

      private double roomArea;

      private boolean hasVentilation;

     

      public Room (int rn, String rt, double ra, boolean hv)

      {

            roomNo = rn;

            roomType = rt;

            roomArea = ra;  //assuming it is positive

            hasVentilation = hv;

      }

     

      public Room(int rn, String rt, double length, double width, boolean hv)

      {

            this(rn, rt, length*width, hv);  //calls other constructor

      }

     

      public String toString()

      {

            String ventilationState;

            if (hasVentilation == true)

                  ventilationState = "ventilated";

            else

                  ventilationState = "not ventilated";

            return "Room " + roomNo + ", " + roomType + ", " +

                        roomArea + " sqmeters, " + ventilationState;

      }

     

      public void setRoomNo(int number)

      {

            roomNo = number;

      }

     

      public void setRoomType(String tRoomType)

      {

            roomType = tRoomType;

      }

     

      public void setHasVentilation(boolean ventilation)

      {

            hasVentilation = ventilation;

      }

     

      public void setRoomArea(double area)

      {

            if (area >= 0)

                  roomArea = area;

      }

     

      public int getRoomNo()

      {

            return roomNo;

      }

     

      public String getRoomType()

      {

            return roomType;

      }

     

      public double getRoomArea()

      {

            return roomArea;

      }

     

      public boolean getHasVentilation()

      {

            return hasVentilation;

      }

}

 

 

 

 

TASK – PART 2 – ROOMTESTER CLASS

 

Here is my solution:

 

 

public class RoomTester

{

      public static void main(String[] args)

      {

            Room r1 = new Room(101, "classroom", 80, true);  //con #1

            System.out.println(r1);

           

            Room r2 = new Room(103, "office", 3, 4, false);  //con #2

            System.out.println(r2);

           

            //Testing get methods

            System.out.println(r1.getRoomNo());

            System.out.println(r1.getRoomType());

            System.out.println(r1.getRoomArea());

            System.out.println(r1.getHasVentilation());

           

            //Testing set methods

            r1.setRoomNo(505);

            r1.setRoomType("cool classroom");

            r1.setHasVentilation(false);

            System.out.println(r1);

           

            //Testing setRoomArea

            r1.setRoomArea(-10);  //should not change area

            System.out.println(r1.getRoomArea());

            r1.setRoomArea(78);

            System.out.println(r1.getRoomArea());

      }

}