1、oc中的self既可以用在動態方法中,也可以用在靜態方法中。
2、self在動態方法中。
#import "student.h"
@implementation student
- (void)test1
- (void)test2
@end
3、self在靜態方法中。
#import "student.h"
@implementation student
+ (void)test1
+ (void)test2
@end
4、在動態方法中,self代表著物件。
5、在靜態方法中,self代表著類。
6、self代表著當前方法的呼叫者。
1、沒有儲存任何記憶體位址的指標稱為空指標。
2、下面兩個都是空指標。
#import #import "student.h"
int main(int argc, const char * argv)
return 0;
}
3、野指標不是空指標,是指向不可用記憶體的指標,非常危險。
4、利用野指標傳送訊息是很危險的,會報錯。
5、利用空指標傳送訊息是發布出去的,不會造成任何影響,不會報錯。
6、如果乙個物件已經被**了,就不要再去操作它,不要再嘗試給它發訊息。
7、野指標示例。
#import #import "student.h"
int main(int argc, const char * argv)
return 0;
}
8、stu指向student物件,可以正常呼叫student物件的setage方法。
9、student物件接收到release會立即被銷毀,所佔記憶體會被**,所以不可用。
10、不能再呼叫student物件的setage方法了,因為記憶體已經不屬於你。
1、@property關鍵字功能:讓編譯器自動生成乙個與資料成員同名的方法宣告。
2、@property關鍵字示例。
#import @inte***ce student : nsobject
// 與下面等效.
@property int age;
- (int)age;
- (void)setage:(int)age;
@end
3、@synthesize關鍵字功能:讓編譯器自動生成乙個與資料成員同名的方法實現,與@property關鍵字配對使用。
4、@synthesize關鍵字示例。
#import "student.h"
@implementation student
// 與下面等效.
@synthesize age;
- (int)age
- (void)setage:(int)age
@end
黑馬程式設計師 OC基本語法總結
黑馬程式設計師 1 oc的源副檔名是.m,oc 完全相容c語言 2 oc裡面的關鍵字大部分是以 開頭,字串以 開頭。3 nslog為oc的輸出函式,包含在import foundation為框架 foudation.h包含foundation框架裡所有的標頭檔案 即每乙個與框架名相同的標頭檔案都包含...
黑馬程式設計師 OC基礎
asp.net unity開發 net培訓 期待與您交流!1.import的用途 1 跟 include一樣,拷貝檔案的內容 2 可以自動防止檔案的內容被重複拷貝 2.import nsobjcruntime.h中有nslog函式的宣告,一般用 3.foundation框架標頭檔案的路徑 4.主標頭...
黑馬程式設計師 OC封裝
物件導向的三大特性 封裝 繼承和多型 在開發過程中,考慮到安全性要求,我們一般不在成員變數名前面使用 public protected等關鍵字修飾,而是使用set方法來為物件提供成員變數的值。set方法的內部也可以對一些不合理的賦值進行篩選過濾。set方法的作用 為外界提供乙個設定成員變數值的方法 ...