Objective-Cインスタンスメソッドとクラスメソッドの書き方
違い
- + プラス クラスメソッド
- クラスの型から直接実行できる静的関数
[Person.h]
#import <Foundation/Foundation.h> @interface Person : NSObject // メソッド定義 -(void) doInstanceMethod; +(void) doClassMethod; @end
[Person.m]
#import クラス名.h #import プロジェクト名-Swift.h // Personクラス @implementation Person: NSObject // 動的関数:インスタンスメソッド -(void)doInstanceMethod { // 処理 } // 静的関数:クラスメソッド:静的:Swiftでいうstatic +(void)doClassMethod { // 処理 } @end
[HumanResources.m]
// インスタンス化 Person *myPerson = [[Person alloc] init]; // doSomethingメソッドを呼ぶ :インスタンスメソッド:動的 [myPerson doInstanceMethod]; // doSomethingElseメソッドを呼ぶ :クラスメソッド:静的:Swiftでいうstatic [Person doClassMethod];