Objective-c中有类似C++中的@private,@protected和@public的声明成员变量的访问权限的关键字!
功能和C++中的一样:
@private:只有的类中,可以访问。
@protected:只有本类和子类中可以访问。
@public:本类,子类,和类外都可以访问。
但是在Objective-c中,这些关键字只能用来修饰成员变量,而不能用来修饰方法。
OC中的私有方法一般是在.m文件实现,但是在.h中并未声明的方法。但是也不是完全私有,你可以通过performSelector,或者运行时调用来访问。只要方法在本类或者父类中实现,即使未声明,调用也不会崩溃。
OC的继承是public的,而且是单继承。也就是一个类最多只有一个父类。子类对父类成员变量的访问权限和C++中的public继承一致,即子类继承了父类后不改变成员变量的访问权限。
网友评论