Назад к вопросам
Junior
78
questionbank
Что такое ключевое слово static в языке Swift?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
static используется в Swift для определения свойств и методов типа.
-
Свойства типа (Type Properties): Значение, общее для всех экземпляров типа. Доступ осуществляется через имя типа, а не через экземпляр.
struct MyStruct { static var typeProperty = "Это свойство типа" var instanceProperty = "Это свойство экземпляра" } // Доступ к свойству типа print(MyStruct.typeProperty) -
Методы типа (Type Methods): Методы, которые вызываются на самом типе, а не на его экземпляре.
class MyClass { static func typeMethod() { print("Это метод типа") } func instanceMethod() { print("Это метод экземпляра") } } // Вызов метода типа MyClass.typeMethod()
Ключевое слово class может также использоваться для создания методов типа, но между static и class есть разница:
| Особенность | static |
class |
|---|---|---|
| Применимо к | Строения, классы, перечисления | Только классы |
| Переопределение | Не может быть переопределен в подклассах | Может быть переопределен в подклассах (если не помечен как final) |
static свойства и методы типа являются "финальными" по своей природе и не могут быть переопределены. class методы типа могут быть переопределены, если явно не помечены как final.