code: protected final ArrayFile openArrayFile(File file, int initialLength, int elementSize) throws IOException {
          boolean isNew = true;
          if (file.exists()) {
              isNew = false;
          }
          
          ArrayFile arrayFile = new ArrayFile(file, initialLength, elementSize);
          if (isNew) {
              initArrayFile();
          }
          
          return arrayFile;
      }
docs: Opens the {@link ArrayFile} with the specified initial length and the element size.
  
  @param file          - the file backing up the array.
  @param initialLength - the initial length of the array.
  @param elementSize   - the number of bytes per element.
  @return the instance of {@link ArrayFile}.
  @throws IOException if this array file cannot be created for any reasons.