NSException
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCoding
-
NSCopying
-
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в iOS 2.0 и позже.
NSException
используется для реализации обработки исключений и содержит информацию об исключении. Исключение является специальным условием, прерывающим нормальный поток реализации программы. Каждое приложение может прервать программу по разным причинам. Например, одно приложение могло бы интерпретировать сохранить файл в каталоге, защищенном от записи как исключение. В этом смысле исключение эквивалентно ошибке. Другое приложение могло бы интерпретировать нажатие клавиши пользователя (например, Ctrl-C) как исключение: индикация, что должен быть прерван продолжительный процесс.
-
Создает и возвращает объект исключения.
Объявление
Objective C
+ (NSException *)exceptionWithName:(NSString *)
name
reason:(NSString *)reason
userInfo:(NSDictionary *)userInfo
Параметры
name
Имя исключения.
reason
Человекочитаемая строка сообщения, суммирующая причину исключения.
userInfo
Словарь, содержащий определяемую пользователем информацию, касающуюся исключения
Возвращаемое значение
Создаваемый
NSException
объект илиnil
если не мог бы быть создан объект.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в iOS 2.0 и позже.
-
Удобный метод, создающий и повышающий исключение.
Параметры
name
Имя исключения.
format,
Человекочитаемая строка сообщения (т.е. причина исключения) со спецификациями преобразования для следующих аргументов переменной.
...
Переменная информация, которая будет вставлена в отформатированную причину исключения (способом
printf
).Обсуждение
Определяемая пользователем информация
nil
для объекта исключительной ситуации.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
Создает и повышает исключение с указанным именем, причиной и параметрами.
Объявление
Параметры
name
Имя исключения.
format
Человекочитаемая строка сообщения (т.е. причина исключения) со спецификациями преобразования для аргументов переменной в
argList
.argList
Переменная информация, которая будет вставлена в отформатированную причину исключения (способом
vprintf
).Обсуждение
Определяемый пользователем словарь сгенерированного объекта
nil
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
init (name:reason:userInfo:) - initWithName:reason:userInfo:
Определяемый инициализаторИнициализирует и возвращает недавно выделенный объект исключения.
Объявление
Objective C
- (instancetype)initWithName:(NSString *)
name
reason:(NSString *)reason
userInfo:(NSDictionary *)userInfo
Параметры
name
Имя исключения.
reason
Человекочитаемая строка сообщения, суммирующая причину исключения.
userInfo
Словарь, содержащий определяемую пользователем информацию, касающуюся исключения
Возвращаемое значение
Создаваемый
NSException
объект илиnil
если не мог бы быть создан объект.Обсуждение
Это - определяемый инициализатор.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
Повышает получатель, заставляя процесс выполнения программы перейти к локальному обработчику исключений.
Объявление
Swift
func raise()
Objective C
- (void)raise
Обсуждение
Когда нет никаких обработчиков исключений в штабеле обработчика исключений, если исключение не повышено во время регистрации уведомления, это вызовы метода обработчик необработанных исключений, в котором может быть выполнено журналирование на последней минуте. Программа тогда завершается, независимо от мер, принятых обработчиком необработанных исключений.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
name
СвойствоСтрока раньше однозначно определяла получатель. (только для чтения)
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
-
reason
СвойствоСтрока, содержащая «человекочитаемую» причину получателя. (только для чтения)
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
-
userInfo
СвойствоСловарь, содержащий специализированные данные, имеющие отношение к получателю. (только для чтения)
Объявление
Swift
var userInfo: [NSObject : AnyObject]? { get }
Objective C
@property(readonly, copy) NSDictionary *userInfo
Обсуждение
nil
если не существуют никакие специализированные данные. Как пример, если возвращаемое значение метода заставило исключение быть повышенным, возвращаемое значение могло бы быть доступно обработчику исключений через этот метод.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
-
callStackReturnAddresses
СвойствоАдреса возврата вызова имели отношение к повышенному исключению. (только для чтения)
Объявление
Swift
var callStackReturnAddresses: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *callStackReturnAddresses
Обсуждение
Массив
NSNumber
инкапсуляция объектовNSUInteger
значения. Каждое значение является обратным адресом кадра вызова. Массив стековых фреймов запускается в точке, в которой исключение было сначала повышено с первыми элементами, являющимися новыми стековыми фреймами.NSException
подклассы, изображающие из себяNSException
класс или подклассы или другие элементы API, вмешивающиеся в повышающий исключение механизм, могут не получить эту информацию.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 2.0 и позже.
-
callStackSymbols
СвойствоМассив, содержащий текущие символы стека вызовов. (только для чтения)
Объявление
Swift
var callStackSymbols: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *callStackSymbols
Обсуждение
Массив строк, описывающих след стека вызовов в данный момент исключение, был сначала повышен. Формат каждой строки определяется
backtrace_symbols()
APIОператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в iOS 4.0 и позже.