В первом варианте вы не сможете использовать методы, которые есть в ArrayList, но нет в Collection (например indexOf, ensureCapacity, trimToSize, indexOfRange и т.д.)
С другой стороны, вы можете где-то пропихнуть Collection, там где ArrayList не пройдет.