Объектный жизненный цикл
Жизненный цикл объекта — т.е. его жизнь во время выполнения от его создания до его уничтожения — отмечен или определен различными сообщениями, которые он получает. Объект возникает, когда программа явно выделяет и инициализирует его или когда он делает копию другого объекта. Объект может также начать свою жизнь во время выполнения во время разархивирования, когда просят декодировать себя от архивного потока байтов. Если объект был разархивирован от файла пера, он получает awakeFromNib
сообщение после всех объектов в файле пера было загружено в память.
После создания и фазы инициализации, объект остается в памяти, пока сохранять количество больше, чем нуль. Другие объекты в программе могут выразить долю в собственности в объекте путем отправки его retain
или путем копирования его, и затем позже оставляют ту долю в собственности путем отправки release
к объекту. В то время как объект жизнеспособен, программа может начать процесс архивации, в котором объект кодирует свое состояние в архивном потоке байтов. Когда объект получает свой финал release
сообщение, сохранять количество опускается до нуля. Следовательно, объект dealloc
метод вызывают, который освобождает любые объекты или другую память, которую он выделил, и объект уничтожается.