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

Must be coded in java Examples are Programming exercise exemplifying a tv/microw

ID: 3861149 • Letter: M

Question

Must be coded in java Examples are Programming exercise exemplifying a tv/microwave This is an Object Modeling/Programming exercise – albeit around 1 (maybe 2) Object. Using the Radio Object we reviewed in class as a point of reference, think of a common (or maybe, not so common) physical device or appliance that’s worthy of modeling as an Object. Consider the following: The basic operations/functionality of your device/appliance become public methods of the implementing Class (e.g., on, off, go, start, stop, … ) The internal structure (or how you envision the internal structure) of your device/appliance become the data members of the implementing Class. This would include the internal piece-parts of the device and well as “state components”. For example, modeling a bread toaster might require a “heat coil” as well as a “power on/off” indicator. In the spirit of modularity, reusability, etc., private/protected methods can and should be used to implement public method sub-tasks. In addition to Class members supporting (a) through (c) above, you also need to implement: Either a public void main(String [] ) method or a second “test harness” Class whose only job will be to: Create an instance of your modeled Class Invoke a sequence of methods on that instance designed to show that it’s being taken A “String toString()” method – allowing you to display the “state” of the Object Instance. What do we mean by the state of the Instance? Normally, the collective value of all data members ‘at a moment in time’ is considered the instance’s state. That’s a very valid definition of state, but for this lab, customize the Class’ toString() method to display values of data members that are considered significant to the device/application’s operation. Note: Refer to the Radio Class’ toString() and main() methods as a guide. See Rodio’s execution output below – showing that a single instance has been created, and taken through a series of operations (method invocations). At key points, a “toString()” representation of the instance’s state is displayed to the console using System.out.println()or the like. New Instance Radio Instance: [SerialNumber=1411918066216:43514652, powerState=false, selectedVolume=0, selectedStation=0.0, selectedBand=null, amPresets=null, fmPresets=null, firstTimeOn=null, lastTimeOn=null, selectedBalance=0, selectedBassLevel=0, selectedTrebleLevel=0] Turned On Radio Instance: [SerialNumber=1411918066216:43514652, powerState=true, selectedVolume=5, selectedStation=770.0, selectedBand=AM, amPresets=[563.0, 1080.0, 773.0, 730.0, 1192.0, 584.0, 608.0, 843.0], fmPresets=[99.0, 92.0, 101.0, 99.0, 88.0, 103.0, 92.0, 92.0, 92.0, 105.0, 99.0, 93.0], firstTimeOn=Sun Sep 28 11:27:46 EDT 2014, lastTimeOn=Sun Sep 28 11:27:46 EDT 2014, selectedBalance=0, selectedBassLevel=2, selectedTrebleLevel=3] Changed Station Radio Instance: [SerialNumber=1411918066216:43514652, powerState=true, selectedVolume=5, selectedStation=92.3, selectedBand=FM, amPresets=[563.0, 1080.0, 773.0, 730.0, 1192.0, 584.0, 608.0, 843.0], fmPresets=[99.0, 92.0, 101.0, 99.0, 88.0, 103.0, 92.0, 92.0, 92.0, 105.0, 99.0, 93.0], firstTimeOn=Sun Sep 28 11:27:46 EDT 2014, lastTimeOn=Sun Sep 28 11:27:46 EDT 2014, selectedBalance=0, selectedBassLevel=2, selectedTrebleLevel=3] Assign Preset [1] to + FM Radio Instance: [SerialNumber=1411918066216:43514652, powerState=true, selectedVolume=5, selectedStation=101.1, selectedBand=FM, amPresets=[563.0, 1080.0, 773.0, 730.0, 1192.0, 584.0, 608.0, 843.0], fmPresets=[101.1, 92.0, 101.0, 99.0, 88.0, 103.0, 92.0, 92.0, 92.0, 105.0, 99.0, 93.0], firstTimeOn=Sun Sep 28 11:27:46 EDT 2014, lastTimeOn=Sun Sep 28 11:27:46 EDT 2014, selectedBalance=0, selectedBassLevel=2, selectedTrebleLevel=3] Turned Off Radio Instance: [SerialNumber=1411918066216:43514652, powerState=false, selectedVolume=5, selectedStation=101.1, selectedBand=FM, amPresets=[563.0, 1080.0, 773.0, 730.0, 1192.0, 584.0, 608.0, 843.0], fmPresets=[101.1, 92.0, 101.0, 99.0, 88.0, 103.0, 92.0, 92.0, 92.0, 105.0, 99.0, 93.0], firstTimeOn=Sun Sep 28 11:27:46 EDT 2014, lastTimeOn=Sun Sep 28 11:27:46 EDT 2014, selectedBalance=0, selectedBassLevel=2, selectedTrebleLevel=3] output :

Explanation / Answer


import java.util.ArrayList;
enum Temperature {LOW,MEDIUM,HIGH }
public class Fridge
{
   private boolean on=false;
   private String name;
   private String brand;
   private int capacity;
   private Temperature temperature=Temperature.MEDIUM;
   private boolean open;
   private ArrayList<String> items=new ArrayList<String>();
  
  
   public Fridge(String name,String brand,int capacity)
   {
       this.name=name;
       this.brand=brand;
       this.capacity=capacity;
   }
  
   public void turnOff()
   {
   on=false;  
   }
  
   public void turnOn()
   {
       on=true;
   }
  
   public void open()
   {
       open=true;
   }
  
  
   public void selectTemperature(Temperature t)
  
   {
       this.temperature=t;
   }
  
   public void addItem(String item)
   {
       if(on==false)
       {
           System.out.println("pls turn on before you putting anything inside me or your food might get rotten");
       }
       if(open==false)
       {
           System.out.println(" Are you blind?? my door is not opened. ");
       }
      
       else
       {
           items.add(item);
       }
      
   }
  
  
   public void getItem(String item)
   {
       if(open ==false)
       {
           System.out.println(" Are you blind?? my door is not opened. ");  
       }
       else
       {
           if(items.contains(item))
           {
               if(on==false)
               {
                   System.out.println("you forgot to turn me on and so your "+item+" dried up");
               }
           }
           else
           {
               System.out.println("there is no such item in");
           }
          
          
       }
      
      
      
      
      
   }
   public String toString()
   { String s;
       if(on)
       {
           return String.format("The fridge is on at "+temperature+" temperature/n"+"it contains:/n:"+items);
       }
       else
       {
  
       return String.format("The fridge is off/n it contains following:/n"+items);
  
       }
   }
}