Например если было исключение nullpointer то делается одно, а если не было- то другое. Прописывать логику выполнения в самом блоке try catch не вариант для меня.
try{ ...код } catch(NullPointerException e){ ...перехвачено исключение. Только у меня подозрения, что до такого исключения вообще доводить не следует, а не перехватывать его. }