Чому б ви відклали викидання винятку?
Якщо ви знаєте, що об'єкт не може належним чином інстанціювати задані параметри, то вам обов'язково слід викинути виняток.
В іншому випадку хтось може перевірити ваш об’єкт на нуль, чого він не буде, і може припустити, що все пішло так, як очікувалося.
Є багато речей, які можна зробити з вашим об'єктом без виклику методу на ньому: його можна додати до списку, його можна порівняти, він може бути надісланий як параметр, і т. Д. І т.д. і т.д. цього не мало статися, вважаючи, що це не дійсний об'єкт.