public interface Iterator
{
    MenuItem [] items;
    int positions = 0;
    
    publci DinerMenuIterator (MenuItem[] items)
    {
        this.items= items;
    }
    
    public Object next()
    {
        MenuItem menuItem = items[positions];
        position = position  + 1;
        return menuItem ;
    }
    
    public boolean hasNext()
    {
        if(position >=items.length || items[position]==null)
        {
            return false;
        }
        else
        {
            return ture;
        }
        
    }


}




public class DinerMenu
{
    static final int MAX_ITEMS = 6;
    INT numberOfItems = 0;
    MenuItem[] menuItems;    
    
    public Iterator createIterator()
    {
       return new DinerMenuIterator(menuItems);
    }
}

public calss DinerMenuIterator
{
    
}

public calss PancakeHouseIterator
{
    
}

public class PancakeHouseMenu
{
    static final int MAX_ITEMS = 6;
    INT numberOfItems = 0;
    MenuItem[] menuItems;    

    public Iterator createIterator()
    {
       return new PancakeHouseIterator(menuItems);
    }
}


public class Waitress
{
    PancakeHouseMenu pancakeHouseMenu;
    DinerMenu dinerMenu;

    public Waitress(PancakeHouseMenu PancakeHOuseMenu,DinerMenu dinerMenu)
    {
        this.pancakeHouseMenu = pancakeHouseMenu;
        this.dinerMenu = dinerMenu;
    }
    
public void PrintMenu()
{
    Iterator pancakeIterator = PancakeHouseMenu.createIterator();
    Iterator dinerIterator = dinerMenu.createIterator();
    System.out.println("MENU\n ----\n BREAKFAST");
    printMenu(pancakeIterator);
    System.out.println("\nLUNCH");
    PrintMenu(dinerIterator);
}


private void PrintMenu(Iterator iterator)
{
    while(iteraor.hasNext())
    {
        MenuItem menuItem = (MenuItem)iterator.next();
        System.out.println(MenuItem.getName() + ", ");
        System.out.println(MenuItem.getPrice() + ", ");
        System.out.println(MenuItem.getDescription());
    }
}

}
posted @ 2010-02-02 15:52 潇潇息一去不复返 阅读(90) 评论(0) 编辑



public abstract class caffeineBeverageWithHook
{
    
    void prepareRecipe()
    {
        boilWater();
        brew();
        pourIncup();
        if(customerWantsCondiments())
        {
            addCondiments();
        }
    }

    abstract void brew();
    abstract void addCondiments();

    VOid boilWater()
    {
        System.out.printLn("Boiling water");
    }
    
    void pourInCup()
    {
        system.out.println("Pouring into cup");
    }
    
    boolean customerWantsCondiments()
    {
        return true;
    }
}

posted @ 2010-02-02 13:30 潇潇息一去不复返 阅读(101) 评论(0) 编辑
努力才能前进,勤耕博客才能看远