teoricamente nel catch ci vanno le eccezioni, cioè quegli errori che in fase di compilazione non vedi o non ti accorgi...
In quel caso è più conveniente scrivere un controllo sul campo che usare il catch.... poi ovviamente questo è un mio punto di vista, tu puoi provare come ti viene meglio