За исключением нескольких очень редких случаев, которые здесь не применимы, если конструктор возвращает, он либо возвращает созданный объект, либо выдает исключение.
Итак, чтобы избежать создания объекта, который был бы недействительным, вы должны сгенерировать исключение. Или вы можете создать метод, который возвращает null
, если объект будет недействительным, и создать его в противном случае.
Кроме того, вы не должны иметь дело с пользовательским интерфейсом в доменных объектах, поэтому не показывайте это окно сообщения там.