Вы находитесь на странице: 1из 6

INITIALIZER

Заметки
• initializer (инициализатор) – аналог конструктора в Java – создание объекта с заданными stored properties

• Главная цель инициализатора – заполнить все свойства значениями (даже если это nil), чтобы все свойства объекта
были инициализированы

• Более строгий подход по сравнению с Java

• Константы – можно заполнять через init (после этого значение поменять нельзя) – многие новички думают, что
константу нужно заполнять сразу при объявлении
Заметки
• Понятие «synthesized initializers» (синтезированные) - инициализаторы, которые автоматические создает
компилятор

• Компилятор может создавать автоматически 2 инициализатора:


• default initializer (без параметров) - если все свойства при объявлении принимают значение по-умолчанию (или
свойств вообще нет)
• memberwise initializer (почленный) – заполняет все свойства, даже те, которые получают значения при
объявлении

• Также можно создавать свои инициализаторы с любыми параметрами – главное, чтобы в итоге были заполнены все
свойства объекта

• Если создан собственный initializer – автоматические уже не создаются

• * В уроках сокращенно можем называть init, чтобы не писать полностью initializer или инициализатор
Failable (Optional)
• Инициализатор тоже может быть optional:

• init?

• init!
Плагин
• Генератор (чтобы вручную не создавать нужные init)
• https://github.com/rjoudrey/swift-init-generator
Домашнее задание
• Установить и попробовать генератор
• https://github.com/rjoudrey/swift-init-generator

• Прочитать до абзаца «Class Inheritance and Initialization»


• https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Initialization.ht
ml

• Прочитать про деинициализатор:


• https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Deinitialization.
html

Вам также может понравиться

  • 6th Central Pay Commission Salary Calculator
    6th Central Pay Commission Salary Calculator
    Документ15 страниц
    6th Central Pay Commission Salary Calculator
    rakhonde
    100% (436)
  • 6th Central Pay Commission Salary Calculator
    6th Central Pay Commission Salary Calculator
    Документ15 страниц
    6th Central Pay Commission Salary Calculator
    rakhonde
    100% (436)
  • Teoria Dlya 8 Zadania
    Teoria Dlya 8 Zadania
    Документ8 страниц
    Teoria Dlya 8 Zadania
    Antony Berezovsky
    Оценок пока нет
  • 25 Enumeration
    25 Enumeration
    Документ7 страниц
    25 Enumeration
    Antony Berezovsky
    Оценок пока нет
  • STR 1
    STR 1
    Документ1 страница
    STR 1
    Antony Berezovsky
    Оценок пока нет
  • 2 STR
    2 STR
    Документ1 страница
    2 STR
    Antony Berezovsky
    Оценок пока нет
  • 13 Set
    13 Set
    Документ4 страницы
    13 Set
    Antony Berezovsky
    Оценок пока нет
  • 2406 R
    2406 R
    Документ220 страниц
    2406 R
    Antony Berezovsky
    Оценок пока нет
  • A414881220 Rezolut
    A414881220 Rezolut
    Документ2 страницы
    A414881220 Rezolut
    Antony Berezovsky
    Оценок пока нет
  • A41-48812-2020 20201105 Reshenija I Postanovlenija
    A41-48812-2020 20201105 Reshenija I Postanovlenija
    Документ11 страниц
    A41-48812-2020 20201105 Reshenija I Postanovlenija
    Antony Berezovsky
    Оценок пока нет
  • Forum FizikovEV But
    Forum FizikovEV But
    Документ1 страница
    Forum FizikovEV But
    Antony Berezovsky
    Оценок пока нет
  • 20 Класс
    20 Класс
    Документ7 страниц
    20 Класс
    Antony Berezovsky
    Оценок пока нет
  • Pamyatka Dlya Roditely
    Pamyatka Dlya Roditely
    Документ1 страница
    Pamyatka Dlya Roditely
    Antony Berezovsky
    Оценок пока нет
  • Sertifikat TanyaDizayn
    Sertifikat TanyaDizayn
    Документ1 страница
    Sertifikat TanyaDizayn
    Antony Berezovsky
    Оценок пока нет
  • 23 Extension PDF
    23 Extension PDF
    Документ7 страниц
    23 Extension PDF
    Antony Berezovsky
    Оценок пока нет
  • 17 Структура
    17 Структура
    Документ11 страниц
    17 Структура
    Antony Berezovsky
    Оценок пока нет
  • 16.Собственные типы
    16.Собственные типы
    Документ7 страниц
    16.Собственные типы
    Antony Berezovsky
    Оценок пока нет
  • 24 Casting PDF
    24 Casting PDF
    Документ4 страницы
    24 Casting PDF
    Antony Berezovsky
    Оценок пока нет
  • 15.Полезные методы PDF
    15.Полезные методы PDF
    Документ4 страницы
    15.Полезные методы PDF
    Antony Berezovsky
    Оценок пока нет
  • 22 Протокол
    22 Протокол
    Документ7 страниц
    22 Протокол
    Antony Berezovsky
    Оценок пока нет
  • 12 Array PDF
    12 Array PDF
    Документ4 страницы
    12 Array PDF
    Antony Berezovsky
    Оценок пока нет
  • 14 Dictionary PDF
    14 Dictionary PDF
    Документ3 страницы
    14 Dictionary PDF
    Antony Berezovsky
    Оценок пока нет
  • 21 Наследование PDF
    21 Наследование PDF
    Документ14 страниц
    21 Наследование PDF
    Antony Berezovsky
    Оценок пока нет
  • Nerics PDF
    Nerics PDF
    Документ4 страницы
    Nerics PDF
    Antony Berezovsky
    Оценок пока нет
  • 26 Error PDF
    26 Error PDF
    Документ5 страниц
    26 Error PDF
    Antony Berezovsky
    Оценок пока нет
  • 18 Initializer
    18 Initializer
    Документ6 страниц
    18 Initializer
    Antony Berezovsky
    Оценок пока нет
  • 8 Замыкания
    8 Замыкания
    Документ7 страниц
    8 Замыкания
    Antony Berezovsky
    Оценок пока нет
  • 6 Optionals PDF
    6 Optionals PDF
    Документ7 страниц
    6 Optionals PDF
    Antony Berezovsky
    Оценок пока нет
  • 1.Переменные константы PDF
    1.Переменные константы PDF
    Документ6 страниц
    1.Переменные константы PDF
    Antony Berezovsky
    Оценок пока нет
  • 28 Библиотеки
    28 Библиотеки
    Документ3 страницы
    28 Библиотеки
    Antony Berezovsky
    Оценок пока нет