public class PQueue2<T implements ORDER<T>> extends PQueue1<T> { COMPARER<T> comparer = new DefaultComparer(); public PQueue2() {super();}; public PQueue2(COMPARER<T> c) {super(c);}; } class DefaultComparer<T implements ORDER<T>> implements COMPARER<T> { public int compare(T o1, T o2) { return (o1.compare(o2)); } }