// Test the LEGAL, but weird, ArrayStack constructor. // Push and pop with both array- and linked- stacks import ch03.stacks.*; public class DemoGenericStacks { public static void main (String[] args) { BoundedStackInterface integerArrayStack = new ArrayStack(new Integer[100]); integerArrayStack.push(10); integerArrayStack.push(20); System.out.println(integerArrayStack.top()); integerArrayStack.pop(); System.out.println(integerArrayStack.top()); integerArrayStack.pop(); UnboundedStackInterface integerLinkedStack = new LinkedStack(); integerLinkedStack.push(30); integerLinkedStack.push(40); System.out.println(integerLinkedStack.top()); integerLinkedStack.pop(); System.out.println(integerLinkedStack.top()); integerLinkedStack.pop(); try { System.out.println(integerArrayStack.top()); // underflow expected } catch (StackUnderflowException sUE) { System.out.println("Underflow for ArrayStack"); } System.out.println(integerLinkedStack.top()); // underflow expected } } // Local Variables: // c-basic-offset: 4 // compile-command: "export CLASSPATH=/a/dale-dataStructures/ajgFiles:. ; // javac DemoGenericStacks.java; java DemoGenericStacks" // End: