有人告訴我,我可以讓性能私人,只在類的實例可以參考它們(通過自)如何使屬性保密?
但是,如果我在類的接口使用@private然後正常申報財產,它仍然可以從課外訪問......那麼,我怎樣才能讓物業變得私密?語法示例。
有人告訴我,我可以讓性能私人,只在類的實例可以參考它們(通過自)如何使屬性保密?
但是,如果我在類的接口使用@private然後正常申報財產,它仍然可以從課外訪問......那麼,我怎樣才能讓物業變得私密?語法示例。
您需要將這些屬性包含在類擴展中。這允許您在接口聲明中的實現文件中定義屬性(以及最近的iVar)。它類似於定義一個類別,但在括號之間沒有名稱。
因此,如果這是你的MyClass.m文件:
// Class Extension Definition in the implementation file
@interface MyClass()
@property (nonatomic, retain) NSString *myString;
@end
@implementation MyClass
- (id)init
{
self = [super init];
if(self)
{
// This property can only be accessed within the class
self.myString = @"Hello!";
}
}
@end
請注意,類擴展可以位於您只在需要訪問的類中導入的頭文件中,因此可以有效地允許「庫私有」屬性。 – bbum