標籤:style blog http color 使用 strong 檔案 io
---------------------- ASP.Net+Unity開發、.Net培訓、期待與您交流! ----------------------
一、物件導向1、 物件導向和面向過程思想區別
OC為物件導向、C為面向過程。實質是解決問題的兩種不同的思想。面向過程關注的是步驟,物件導向關注的是解決問題需要的對象。
2、 常用術語
面向過程:Procedure Oriented
物件導向:Object Oriented 簡稱OO
物件導向編程:Object OrientedProgramming 簡稱OOP
3、 怎樣建立對象
類:描述屬性、行為。是對無數個相同屬性的對象的描述,是抽象的。
對象:具體化類。
4、 類的設計(3步驟)
1>類名字(命名規範:第一個字幕必須大寫、不能用 底線、多個英文單詞必須用駝峰標誌)
2>屬性
3>行為(功能)
5、 類的劃分
名詞一般都是類。一般擁有相同屬性和行為的對象都可以抽象成一個類。
6、 例子
植物大戰殭屍中的殭屍類
類名:Zoombie
屬性:life(生命值)speed(速度) gongjili(攻擊力)
行為:walk(走) bite(咬) die(死亡)
雷電遊戲中的飛機
類名:Plane
屬性:life(生命值)gongjili(攻擊力) speed(速度) bombCount(炸彈數量)
行為:fly(飛)bomb(爆炸) shoot(射擊) die(死亡)
二、類和對象
1.類: 類的設計只關注三個東西:類名、屬性和方法。類的聲明使用關鍵字@interface和@end。類的實現使用關鍵字@implementation和@end。
2.方法的聲明和實現,都必須以 + 或者 - 開頭
- + 表示類方法(靜態方法)
- - 表示對象方法(動態方法)
3.在.h中聲明的所有方法範圍都是public類型,不能更改
4.成員變數常用範圍有3種:
1> @public 全域都可以訪問
2> @protected 只能在類內部和子類中訪問
3> @private 只能在類內部訪問
三、類的聲明和實現的練習
1.建立一個Person類
類的聲明:
類的實現:
主函數
四、常見錯誤[email protected] @end和@implementation @end不能嵌套包含2.只有類的聲明沒有類的實現3.漏寫@end4.兩個類的聲明嵌套(可以把順序打亂)5.成員變數沒有寫在{}裡6.方法的聲明寫在了{}裡面7.在聲明時對類的成員變數進行初始化,請注意成員變數不能脫離對象而獨立存在8.方法無法像函數那樣的調用9.成員變數和方法不能用static等關鍵字修飾,不要和c語言混淆10.類的實現可以寫在mian函數後面,在使用之前只要有聲明就可以
五、OC對象與函數有著本質的區別:
1.方法的實現只能寫在@implementation··@end中,對象方法的聲明只能寫在@interface···@end中間
2.對象方法都以-號開頭,類方法都以+號開頭
3.對象方法只能由對象來調用,類方法只能由類來調用,不能當做函數一樣調用
4.函數屬於整個檔案,可以寫在檔案中的任何位置,包括@implementation··@end中,但寫在@interface···@end會無法識別,函數的聲明可以再main函數內部也可以在main函數外部。
5.對象方法歸類\對象所有
6.函數調用不依賴與對象
7.函數內部不能直接通過成員變數名訪問對象的成員變數
六、
類和方法的設計
設計一個工具類:一個計算機類,要求(1)返回π,(2)計算兩個整數的和,(3)計算某個整數的平方。
類的聲明部分
類的實現部分
七、物件導向方法1.
對象方法
1>對象方法以-開頭如 -(void)xx;
2>對象方法只能又對象來調用
3>對象方法中可以訪問當前對象的成員變數
4>調用格式 [對象名 對象方法名];
2.類方法
1>類方法以+開頭 如+(void)put;
2>類方法只能由類來調用
3>類方法中不能訪問執行個體(成員)變數,因為類方法又類來調用,並沒有建立儲存空間來儲存類中的成員變數。
4>調用格式:[類名 類方法名];
5>類方法的好處和適用場合:
不依賴於對象,執行效率更高;
能用類方法解決的問題,盡量使用類方法;
場合:當方法內部不需要使用到成員變數時,可以改為類方法。
3.
方法名
1>不帶參數的方法
聲明:
調用:
2>帶參數的方法
聲明:
調用:
注意:冒號也是方法名的一部分。
---------------------- ASP.Net+Unity開發、.Net培訓、期待與您交流! ----------------------
詳細請查看:www.itheima.com