はdeveloper reference for exception handlingを見てください。ココアでは、nilArgumentException
のような例外はありません。NSException
しか取得できません。きめ細かいメッセージを与えるか、またはあなたが次のことを行うことができます扱うために、
以下
if ([[exception name] isEqualToString:MyAppException])
はNSExceptionヘッダーファイルで定義された例外の名前の一覧です。
FOUNDATION_EXPORT NSString * const NSGenericException;
FOUNDATION_EXPORT NSString * const NSRangeException;
FOUNDATION_EXPORT NSString * const NSInvalidArgumentException;
FOUNDATION_EXPORT NSString * const NSInternalInconsistencyException;
FOUNDATION_EXPORT NSString * const NSMallocException;
FOUNDATION_EXPORT NSString * const NSObjectInaccessibleException;
FOUNDATION_EXPORT NSString * const NSObjectNotAvailableException;
FOUNDATION_EXPORT NSString * const NSDestinationInvalidException;
FOUNDATION_EXPORT NSString * const NSPortTimeoutException;
FOUNDATION_EXPORT NSString * const NSInvalidSendPortException;
FOUNDATION_EXPORT NSString * const NSInvalidReceivePortException;
FOUNDATION_EXPORT NSString * const NSPortSendException;
FOUNDATION_EXPORT NSString * const NSPortReceiveException;
FOUNDATION_EXPORT NSString * const NSOldStyleException;
CORRECTION:カスタム例外をキャッチするために、以下のコメントの1で提案されているように
あなたは、NSExceptionクラスをサブクラス化することができます。
あなたの入力に感謝! – Tom