code: @SuppressWarnings("unchecked")
  	protected final void updateComponentType(E newElement) {
  		final Class<? extends E> lclazz = (Class<? extends E>) newElement.getClass();
  		this.clazz = (Class<? extends E>) ReflectionUtil.getCommonType(this.clazz, lclazz);
  	}
docs: Update the component type information with
  the type of the new array element.
  
  @param newElement is the element for which the known top type in this array must be eventually updated.