code: @Override
      @SuppressWarnings("unchecked")
      public <T extends Serializable> T loadObject(String name, Class<T> klass) throws NoSuchElementException {
          assertConnectionOpen();
  
          if(!existsObject(name)) {
              throw new NoSuchElementException("Can't find any object with name '"+name+"'");
          }
  
          T obj;
          try {
              Path objectPath = new File(getRootPath(storageName).toFile(), name).toPath();
              Object serializableObject = DeepCopy.deserialize(Files.readAllBytes(objectPath));
              obj = klass.cast(serializableObject);
          }
          catch (IOException ex) {
              throw new UncheckedIOException(ex);
          }
          catalog.put(name, new WeakReference<>(obj));
          return obj;
      }
docs: {@inheritDoc}