code: public <A, E> ArrayPath<A, E> getArray(String property, Class<A> type) {
          validate(property, Array.newInstance(type, 0).getClass());
          return super.createArray(property, type);
      }
docs: Create a ArrayPath instance for the given property and the given array type
  
  @param <A>
  @param <E>
  @param property property name
  @param type property type
  @return property path