標籤:物件導向 類 執行個體 foundation架構 對象
每天更新的東西可能有重複的內容,當時每一部分的知識點是不同的,需要大家認真閱讀
這裡介紹了iOS類的合理設計,物件導向思想
main.m
#import <Foundation/Foundation.h>#import "Iphone.h"int main(int argc, const char * argv[]){ Iphone * phone = [Iphone new]; phone->_color = IphoneColorWhite; phone->_size = IphoneSize3point5; //phone = 0ffxxx //[0ffxxx cameraWithFlashLightStatus]; [phone cameraWithFlashLightStatus:IphoneFlashLightStatusOpen]; return 0;}
iphone.h
@interface Iphone : NSObject{ @public /** 用來儲存iPhone螢幕尺寸 */ //enum IphoneSize 與IphoneSize 等價 IphoneSize _size;//用來儲存iPhone螢幕尺寸 /** 用來儲存iPhone顏色 */ IphoneColor _color;//用來儲存iPhone顏色 /** 用來儲存cpu大小 */ float _cpu; /** 用來儲存內部容量大小 */ float _ram;}//設計方法技巧,假設方法沒有傳回值,不要糾結是否有傳回值,不要讓瑣碎的事兒幹擾思路/**開啟閃光燈*/-(void)openFlashLight;/**關閉閃光燈*/-(void)closeFlashLight;/**自動*/-(void)flaseLightAuto;/**拍照*/-(void) cameraWithFlashLightStatus:(IphoneFlashLightStatus)flaseLightStatus;@end
iphone.m
#import "Iphone.h"@implementation Iphone/**開啟閃光燈*/- (void)openFlashLight{ NSLog(@"開啟閃光燈");}/**關閉閃光燈*/- (void)closeFlashLight{ NSLog(@"關閉閃光燈");}/**自動*/-(void)flaseLightAuto{ NSLog(@"自動模式");}/**拍照*/- (void)cameraWithFlashLightStatus:(IphoneFlashLightStatus)flaseLightStatus{ //類的內部如何獲得一個對象的地址 //self 關鍵字 //誰調用 self就代表誰 if(flaseLightStatus == IphoneFlashLightStatusOpen) { //開啟閃光燈 [self openFlashLight]; } else if(flaseLightStatus == IphoneFlashLightStatusClose) { [self closeFlashLight]; //關閉閃光燈 } else { [self flaseLightAuto]; //自動模式 } NSLog(@"拍照了!笑一個");}@end
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
iOS類的合理設計,物件導向思想