// File: TestStack2.java // // Author: Rahul Simha // Created: Sept, 2008. // // Same as TestStack.java but with generics. // Need to import from java.util. import java.util.*; // An object to use in the stack: class Person { String name; String ssn; // Constructor. public Person (String nameInit, String ssnInit) { name = nameInit; ssn = ssnInit; } // Override toString() public String toString () { return "Person: name=" + name + ", ssn=" + ssn; } } // End of class "Person" public class TestStack2 { public static void main (String[] argv) { // Create a new stack object, this time specifying the type. Stack S = new Stack (); // Create a Person instance and add it to the Stack. S.push (new Person ("Terminator", "444-43-4343")); S.push (new Person ("Rambo", "555-54-5454")); S.push (new Person ("James Bond", "666-65-6565")); S.push (new Person ("Bruce Lee", "777-76-7676")); // Pop the top of the stack. NOTE: no cast needed. Person p = S.pop(); System.out.println (p); // Look at the top without popping: p = S.peek(); System.out.println (p); } } // End of class "TestStack2"