code: public String getString(String key, Object... params  ) {
          try {
              return MessageFormat.format(this.getStringImpl(key), params);
          } catch (MissingResourceException e) {
              return handleMissingResourceException(e);
          }
      }
docs: Gets the message with the given key, formatted with the given parameters.
  <p>
  The message will be obtained either from the core {@link ResourceBundle} or a {@code ResourceBundle} of an add-on
  (depending on the prefix of the key) and then {@link MessageFormat#format(String, Object...) formatted}.
  <p>
  <strong>Note:</strong> This method does not throw a {@code MissingResourceException} if the key does not exist, instead
  it logs an error and returns the key itself. This avoids breaking ZAP when a resource message is accidentally missing.
  Use {@link #containsKey(String)} instead to know if a message exists or not.
  
  @param key the key.
  @param params the parameters to format the message.
  @return the message formatted.
  @see #getString(String)