Generics Java Tutorial

class Pair {
  // Constructor
  public Pair(KeyType aKey, ValueType aValue) {
    key = aKey;
    value = aValue;
  }
  // Get the key for this pair
  public KeyType getKey() {
    return key;
  }
  // Get the value for this pair
  public ValueType getValue() {
    return value;
  }
  // Set the value for this pair
  public void setValue(ValueType aValue) {
    value = aValue;
  }
  private KeyType key;
  private ValueType value;
}
public class MainClass {
  public static void main(String[] a) {
    Pair p = new Pair(1, "A");
    System.out.println(p.getKey().getClass().getName());
  }
}
java.lang.Integer