Is it a bad programming practice to have try/catch blocks inside constructors? Or does it make no difference as long as our programs handle typeinitializer exceptions gracefully.
In C# if there are any exceptions inside a constructor the framework always throws typeinitilizer exceptions.
Thanks, Shamika
System.TypeInitializationException
is thrown when a static constructor throws an exception, not on an instance constructor. Exceptions are thrown normally in instance constructors.That aside, there's nothing "wrong" with it any more than it is anywhere else; handle exceptions that you can properly recover from, and allow those that you can't to bubble up.