It knows how to create an `Error` object with a string message attribute even if you throw something else which is not an actual instance of `Error` class (e.g. string, etc.).