Заявленное свойство

Заявленное свойство обеспечивает синтаксическое сокращение для объявления методов доступа класса и, дополнительно, реализовывая их. Можно объявить свойство где угодно в списке объявления метода, который находится в интерфейсе класса, или в объявлении протокола или категории. Вы используете следующий синтаксис:

@property (<#attributes#>) <#type#> <#name#>;

Вы начинаете объявление свойства с ключевого слова @property. Можно тогда дополнительно обеспечить заключенный в скобки набор атрибутов свойства, определяющих семантику хранения и другие способы поведения свойства. (Обратитесь к документу, окончательно описывающему списки свойств для описаний этих атрибутов.)

Каждое объявление свойства заканчивается спецификацией типа и именем. Например:

@property(copy) NSString *title;

Этот синтаксис эквивалентен объявлению следующих методов доступа:

- (NSString *)title;
- (void)setTitle:(NSString *)newTitle;

В дополнение к объявлению методов доступа можно дать компилятору команду синтезировать реализации их (или сообщать компилятору, что класс синтезирует их во время выполнения).

Вы используете @synthesize оператор в реализации класса блокирует, чтобы сказать компилятору создавать реализации, соответствующие спецификацию, которую Вы дали в объявлении свойства.

@interface MyClass : NSObject
{
    NSString *title;
}
@property(copy) NSString *title;
@end
 
@implementation MyClass
@synthesize title;
@end

Вы используете @dynamic оператор, чтобы сказать компилятору подавлять предупреждение, если это не может счесть реализацию методов доступа указанной @property объявление.

@implementation MyClass
@dynamic title;
@end

Необходимые как условие статьи

Похожие статьи

    (Ни один)