天天看點

Objective-c 通路控制

在Objective-c中定義類時,也可以使用類似于C++中public、private來修飾成員變量,如下:

[cpp] view plaincopy

@intterface Test:NSObject{  

@public  

int i;  

int j;  

@protected  

float m;  

float n;  

@private  

double x;  

double y;  

}  

@protected: 用此指令修飾的執行個體變量可以被該類和任何子類定的方法直接通路,這是預設情況。

@private:用此指令修飾的執行個體變量可以被定義在該類的方法直接通路,但是不能被子類中定義的方法直接通路。

@public:用此指令修飾的執行個體變量可以被該類中的方法直接通路,也可以被其它類定義的方法直接通路。

注意,在實際使用中,我們不能直接通路@private權限的屬性,但是測試程式是可以正确執行,隻是Xcode會給出警告。

繼續閱讀