1 前言
本節我們主要介紹了一下屬性聲明的方式和與存儲方法的關系。
轉載請注明轉自:http://blog.csdn.net/developer_zhang
2 詳述
屬性聲明提供了一個為聲明一個類存儲方法和他們的可選的實作的動态的記法。我們能夠聲明一個屬性在類的接口中,或者在一個協定或者類别的聲明中的方法聲明清單中的任何地方。我們可以使用下面的文法:
@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
3 結語
以上是所有内容,希望對大家有所幫助。