эй, это НЕ одно и то же, в первом случае V = C.SomeParam2;
никогда не будет выполнено в случае исключения, тогда как во втором случае оно всегда будет выполнено.
Более того, ваш пример использования блока catch является глубоко неправильным , всегда помещайте объект исключения после перехвата и регистрируйте где-нибудь с каркасом ведения журнала, что произошло, затем реагируйте и обрабатывайте исключение, если вы может, и только если это имеет смысл, или выбросить его, или вообще не перехватить, и ваш код вызова поймает его.