關鍵詞正確寫法:
Xcode 錯誤的寫法: xcode
iPhone 錯誤的寫法:IPhone
iOS 錯誤的寫法:IOS
OC 全稱: Objective-C 錯誤的寫法:Object-c
文件後綴:
.h 頭文件
.c C語言
.m C語言,OC語言
.cpp C++
.mm C++,OC語言
#import關鍵字:
#import 和 #include 的異同
相同點:都是預編譯指令
將其他文件導入到#import該行的功能
#include<> #import<> 都是導入系統文件
#include"" #import"" 都是導入用戶自定義的文件
不同點:#import是#include的升級版,具有防止相同文件多次導入的功能
以後我們是導入的指令符用#import
Foundation框架介紹:
Foundation框架,OC中最重要的一個框架,Foundation命名空間以NS開頭
框架:封裝了一些常用的類,函數,方法,結構體,變量等等。
自動釋放池:
@autoreleasepool。自動釋放池,幫助程序員管理內存空間,代碼寫下括號之內。
iOS4.0之前的寫法
NSAutoreleasepool * pool = [NSAutoreleasepool new];
[pool drain];
NSLog的用法:
NSLog是Foundation框架提供的日誌輸出函數,可以輸出日期,時間,對應的應用程序。
NSLog具有自動換行功能,末尾加\n無效。
@"" 是一個NSString對象的字面量變現。
字面量:@(),@[],@{}
printf的佔位符在我們NSLog中一樣使用
%i 修飾整形
%g 修飾浮點型,末尾0省略
%@ 修飾對象
面向對象編程:
面向過程:程序員相當於一個執行者,C語言。
面向對象:程序員相當於一個指揮者,OC,Java,C++。
打開電腦
打開瀏覽器
聽歌
電腦 - 開機
電腦 - 打開瀏覽器
瀏覽器 - 聽歌
類和對象:
對象是對客觀事物的抽象,類是對對象的抽象。類是一種抽象的數據類型,其定義爲:
它們的關係是,對象是類的實例,類是對象的模板。
類:圖紙 對象:車
C語言用結構體封裝數據的。
OC用的是類。屬性就是成員變量,行爲就是方法。
類:描述事物的名稱,屬性和行爲。
名稱:老師
屬性:男,人
行爲:講課
名稱:老師
行爲:指導
名稱:學生
行爲:做題
Student
屬性:姓名,學號
行爲:學習,翹課
OC中是如何實現一個類的
聲明 和 實現。
類的聲明:以@interface開頭,以@end。
類的實現:以@implementation開頭,以@end。
NSObject基類
NSObject的作用使我們的Person具有創建對象的能力
在大括號裏聲明成員變量
常見錯誤:
unrecognized selector sent to instance 對象沒有實現該方法
成員變量命名規範
成員變量以下劃線開頭,駝峯命名
成員方法:
無參數:方法類型符 (返回值類型) 方法名,被(-)修飾的方法,只能被對象調用
:的作用:
:是方法名的一部分
一個:對應一個形參
:前面的文字是描述參數的
描述參數可以省略,但是堅決不建議省略
不同類定義相同方法,是互不影響的。
舉例:[Person new]對應哪些操作
1.爲Person這個對象在堆內存中分配空間,malloc
2.初始化成員變量
3.返回一個指向該對象的指針