package generic;import java.io.Serializable;import java.util.Comparator;public class GeneriThree { public static void main(String[] args) { // TODO Auto-generated method stub } /** * 类型擦除 * * 原始类型: * 删除类型参数的泛型类型名。 * * 擦除类型变量并替换为限定类型(无限定的变量用Object) */ //Pair的原始类型如下 class Pair{ private Object first; private Object second; public Object getFirst() { return first; } public void setFirst(Object first) { this.first = first; } public Object getSecond() { return second; } public void setSecond(Object second) { this.second = second; } } //再如:原始类型 /*class Interval & Serializable> implements Serializable{ private static final long serialVersionUID = 1L; private T low; private T upper; public Interval(T first,T second){ if (first.compareTo(second)<=0) { low = first; upper = second; } } }*/ //限定类型 class Interval implements Serializable{ private static final long serialVersionUID = 1L; private Comparable low; private Comparable upper; public Interval(Comparable first,Comparable second){ if (first.compareTo(second)<=0) { low = first; upper = second; } } } }