0

属性を非公開にする必要があり、言語が getter/setter メソッドの自動作成をサポートしている場合、どのように正確に属性を宣言する必要がありますか?

必要に応じて自動的に作成されたゲッターまたはセッターをオーバーライドする唯一の方法はありますか?

4

1 に答える 1

3

.m (実装) ファイルの先頭:

// Private category on your class, declared at top of implementation file.
@interface MyClass ()
@property (nonatomic, copy) NSString * privateString;
@end

@implementation
... 
@end

これらの「プライベート プロパティ」は、実装内でのみ表示されます。 ObjC にはランタイム アクセス制限の機能がないことに注意してください。他のオブジェクトは、必要に応じてプライベート ゲッターとセッターを呼び出すことができます (ただし、これによりコンパイラの警告が生成されます)。

于 2013-04-03T17:20:38.513 に答える