code: @SuppressWarnings("unchecked")
    protected final void initialize(int maxSize) {
      size = 0;
      int heapSize = maxSize + 1;
      heap = (T[]) new Object[heapSize];
      this.maxSize = maxSize;
    }
docs: Subclass constructors must call this.