FileDocCategorySizeDatePackage
VendingMachine.javaAPI DocExample1054Wed Jan 09 13:47:36 GMT 2002None

VendingMachine.java

// 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






}