標籤:
建立一個IOSApp類
IOSApp.h檔案
1 #import <Foundation/Foundation.h> 2 3 @interface IOSApp : NSObject 4 5 // 1.添加一個無參數的方法 6 -(void)printInfomation; 7 8 // 2.添加一個有參數的方法 9 -(void)buyApp:(id)appName;10 11 @end
IOSApp.m檔案
1 #import "IOSApp.h" 2 3 @implementation IOSApp 4 5 // 3.實現標頭檔中無參數的方法 6 -(void)printInfomation 7 { 8 NSLog(@"Xcode Interactive Tutorials"); 9 }10 11 // 4.實現標頭檔中帶有參數的方法12 -(void)buyApp:(id)appName13 {14 NSLog(@"Buy the App%@",appName);15 }16 17 @end
ViewController.m 檔案
1 #import "ViewController.h" 2 // 5.匯入鋼材建立的類的標頭檔 3 #import "IOSApp.h" 4 5 6 @interface ViewController () 7 8 @end 9 10 @implementation ViewController11 12 13 - (void)viewDidLoad {14 [super viewDidLoad];15 // Do any additional setup after loading the view, typically from a nib.16 17 // 6.初始化一個類對象18 IOSApp *app = [[IOSApp alloc] init];19 // [email protected]()可以理解為取類方法的編號,它的行為基本可以等同c語言中的函數指標,它的結果是SEL類型。20 SEL method = @selector(printInfomation);21 // 8.respondsToSelector()方法,用來判斷是否有,以某個名字命名的方法。22 if ([app respondsToSelector:method]){23 24 // 9.performSelector是由運行時系統負責去找方法的,在編譯時間不做任何校正25 // 調用方法26 [app performSelector:method];27 }28 29 SEL method2 = @selector(buyApp:);30 if ([app respondsToSelector:method2]) {31 // 調用方法32 [app performSelector:method2 withObject:(@"Photoshop Interactive Tutorials")];33 }34 }35 36 37 38 - (void)didReceiveMemoryWarning {39 [super didReceiveMemoryWarning];40 // Dispose of any resources that can be recreated.41 }42 43 @end
iOS 網路與多線程--7.Performselector訊息處理方法