// Skeleton Vending Machine program
// Uses text - based output to demonstrate two-way Object interaction
// J Harvey 2002 Version 1
import java.awt.*;
import java.applet.*;
public class VendingMachine extends Applet
{
public void init()
{
Controller con1 = new Controller();
}
public void paint(Graphics g)
{
}
public class Controller
{
public Controller()
{
System.out.println("Controller object constructed");
Machine mach1 = new Machine(this);
Machine mach2 = new Machine(this);
mach1.turnOnMachine();
mach2.turnOnMachine();
}
public void runningOut()
{
System.out.println("Machine reports low stock");
}
}// end class B
public class Machine
{
Controller con1;
int stockRemaining=3;
public Machine(Controller bobj)
{
con1 = bobj;
System.out.println("Machine object constructed ");
}
public void turnOnMachine()
{
System.out.println("Machine turned on");
if (stockRemaining < 5)
con1.runningOut();
}
} // end Machine
}
|