サーチ…


前書き

インスタンスメソッドは、特定のクラスに固有のメソッドです。インスタンスメソッドは宣言され、定義された後に - (マイナス)記号が続きます。

クラスメソッドは、クラス名自体によって呼び出すことができます。クラスメソッドは、+(プラス)記号を使用して宣言され、定義されます。

構文

  1. - (void)testInstanceMethod; // "+"記号で宣言するクラスメソッド
  2. (void)classMethod; // " - "記号で宣言するインスタンスメソッド

クラスメソッドとインスタンスメソッドを宣言する方法。

インスタンスメソッドはクラスのインスタンスを使用します。

@interface MyTestClass : NSObject

- (void)testInstanceMethod;
    
@end

彼らはそうして使用することができます:

MyTestClass *object = [[MyTestClass alloc] init];
[object testInstanceMethod];

クラスメソッドは、クラス名だけで使用できます。

@interface MyClass : NSObject

+ (void)aClassMethod;

@end

彼らはそうして使用することができます:

[MyClass aClassMethod];

クラスメソッドは、[NSStringの+ stringWithFormat:]やNSArrayの+ arrayWithArrayのような多くのFoundationクラスの便利なメソッドです



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow