Mengapa Anda menunda melempar pengecualian?
Jika Anda tahu bahwa objek tidak dapat membuat instance dengan benar dengan parameter yang diberikan, maka Anda harus melempar pengecualian.
Jika tidak, seseorang mungkin menguji objek Anda untuk null, yang tidak akan, dan dapat menganggap semuanya berjalan seperti yang diharapkan.
Ada banyak hal yang dapat dilakukan untuk objek Anda tanpa memanggil metode di atasnya: itu dapat ditambahkan ke daftar, dapat dibandingkan, dapat dikirim sebagai parameter, dll dll. Semua ini adalah hal-hal yang seharusnya tidak terjadi, mengingat itu bukan objek yang valid.