Question: public interface Stack { public void push (T value): public T pop (): } public class LinkedStack implements Stack { private Node first = null:

public interface Stack { public void push (T value): public T pop (): } public class LinkedStack implements Stack { private Node first = null: public void push (T value) { Node n = new Node (value): n. next = first: first = n: } public T pop () { if (first = null) { throw new IllegalAccessException(): } T value = first. value: first = first. next: return value: } } public class FixedArrayStack implements Stack { private T [] items: private int top = 0: public FixedArrayStack (int size) { items = (T [])new Object [size]: } public void push (T value) { items [top] = value: top ++: } public T pop () { top --: T value = items [top]: items [top] = null: return value: } } public static main (String [] args) { Stack stack: if (args [0] = 'ARRAY') { stack = new FixedArrayStack (args. length): } else { Look at the push method in FixedArrayStack class, What do you think? will throw an exception in some cases will always throw an exception looks perfectly fine the method is syntactically wrong
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
