成員變量
@interface MyViewController :UIViewControlle
{
UIButton *yourButton;
int count;
id data李剖;
}
成員變量用于類內(nèi)部芒率,無需與外界接觸的變量。成員變量默認(rèn)是protected篙顺,一般情況下偶芍,非子類對象無法訪問
因?yàn)槌蓡T變量不會生成set充择、get方法,所以外界無法與成員變量接觸
成員變量是定義在{}號中的變量匪蟀,如果變量的數(shù)據(jù)類型是一個類則稱這個變量為實(shí)例變量椎麦。
因?yàn)閷?shí)例變量是成員變量的一種特殊情況,所以實(shí)例變量也是類內(nèi)部使用的材彪,無需與外部接觸的變量观挎,這個也就是所謂的類私有變量。
局部變量:
-(void)viewDidLoad
{
// 局部變量
NSArray *array = [[NSArray alloc] initWithObject:@“123”,nil];
}
局部變量是根據(jù)其生存周期定義的段化,在源文件中的array嘁捷,其生命周期是在以“{ }”為界限的代碼塊中,雖然它的名稱與成員變量相同显熏,但不是同一個變量雄嚣。
屬性變量:
@interface MyViewController :UIViewControlle
@property (nonatomic, strong) UIButton *myButton;
@end
屬性變量是用于與其他對象交互的變量。
屬性變量的好處就是允許讓其他對象訪問到該變量(因?yàn)閷傩詣?chuàng)建過程中自動產(chǎn)生了set 和get方法)喘蟆。
當(dāng)然缓升,你可以設(shè)置只讀或者可寫等,設(shè)置方法也可自定義蕴轨。
現(xiàn)在大家似乎都不怎么喜歡用成員變量來定義類的變量港谊。
都喜歡用屬性變量來定義類的變量。
把需要與外部接觸的變量定義在.h文件中橙弱,只在本類中使用的變量定義在.m文件中歧寺。
實(shí)例變量:
實(shí)例變量本質(zhì)上就是成員變量,只是實(shí)例是針對類而言膘螟,
編譯器會自動為你生成以下劃線開頭的實(shí)例變量 _myButton成福,也會自動為你生成setter,getter方法荆残。
如果.m文件中寫了@synthesize myButton奴艾,那么生成的實(shí)例變量就是myButton;如果沒寫@synthesize myButton内斯,那么生成的實(shí)例變量就是_myButton蕴潦。
全局變量:
定義:在@implementation外定義的變量(在@implementation中定義也是可以但是一般不這么干)
舉例:
//規(guī)范的
static int hu=3;//全局變量
NSString*sttr1=@”S1ViewController”;//全局變量
@implementation S1ViewController
@end