Вы можете использовать его для реализации специальной обработки ошибок для вещей, связанных с вашим приложением.Предположим, вы создаете банановое приложение, тогда у вас может быть OutOfBananasException
.Если ваше приложение выходит из бананов, вы можете сгенерировать исключение и позже поймать его с помощью специальной обработки ошибок.
try
{
EatBananas();
}
catch(OutOfBananasException oobe)
{
GetMoreBananas();
}
catch(Exception e)
{
TellUserAndAbort();
}
Редактировать:
Причина вместо этого использовать свои собственные исключениявстроенный способ - дать понять всем, кто читает ваш код или использует вашу библиотеку, какой тип ошибки произошел.Вы должны создавать свои собственные исключения только тогда, когда вы не можете найти подходящих встроенных исключений.
Edit2:
Одна вещь, которую вы можете сделать со своими собственными исключениями, которые вы не можете сделать свстроенным является добавление свойств, описывающих вещи об условии ошибки, которые может использовать обработчик ошибок.Если у вас есть исключение, относящееся к клиентам, то оно может иметь свойства для имени клиента и идентификатора клиента, что позволяет обработчику ошибок выводить информационные сообщения об ошибках пользователю.