建立一個IOSApp類app
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文件spa
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)appName 13 { 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 ViewController 11 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 // 7.@selector()能夠理解爲取類方法的編號,它的行爲基本能夠等同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