一、static關鍵字
(1)C語言中的static
a、修飾局部變量
b、修飾全局變量
c、修飾函數web
(2)OC中的static關鍵字
a、static不能修飾屬性,也不能修飾方法
b、static能夠修飾方法中的局部變量
若是方法中的局部變量被static修飾,這個變量就會變成靜態變量存儲在常量區,當方法執行完畢以後,不會回收,下次再執行這個方法的時候,直接使用,而不用再次聲明svg
二、封裝函數
@interface Student : NSObject { int _number NSString *_name; int _age; } -(void)setNumber:(int)number; -(int)number; -(void)setName:(NSString *)name; -(NSString)name; -(void)setAge:(int)age; -(int)age; +(instancetype)student;//若是方法的返回值是當前類的對象,那麼方法的返回值就寫instancetype @end //實現 @implementation Student -(void)setNumber:(int)number { _number = number; } -(int)number { return _number; } -(void)setName:(NSString *)name { _name = name; } -(NSString)name { return _name; } -(void)setAge:(int)age; { _age = age; } -(int)age { return _age; } @end
三、self關鍵字
(1)在方法的內部能夠定義一個和屬性名相同的局部變量,這個時候,若是在方法中訪問這個同名的變量,訪問的是局部變量this
(2)self:本身的;和Java、C#中的this關鍵字有些相似
能夠在對象方法和類方法中使用,self是一個指針,在對象方法中self指向當前對象,在類方法中self指向當前對象,在類方法中self指向當前類spa
(3)self用在對象方法中
a、self在對象方法中,指向當前對象:誰調用對象誰就是當前對象
b、self指向當前對象的做用
能夠使用self顯示的訪問當前對象的屬性
self->屬性 表明訪問的是當前對象的這個屬性
能夠使用self來調用當前對象的其餘對象方法
c、對象方法中使用self的場景指針