OC学习中关于@private@protected@pakege@public的访问权限和继承问题
来源:互联网 发布:知乎 余建春卡迈克尔数 编辑:程序博客网 时间:2024/04/28 09:33
我遇到的问题是为什么父类的实例变量name是用@protected修饰的,但子类就是访问不了。后来发现@protected修饰的成员变量(注意区别于全局都能访问的@public)只能在子类中(注意是子类的定义中即@interface@end@implementation@end中才能访问,直接(用->)间接(用函数)都可以访问),但在外部就不行了,比如我犯的错就是在外部main函数中son1->name,编译提示name变量被protected,无法访问。具体看学习时测试的代码回忆,转换测试一下就知道。
#import<Foundation/Foundation.h>@interface Father : NSObject{//@private @protectedint name;}//@property int name;//-(int)getyourfathername;-(void) info;@end@implementation Father//{int name;}-(void)info{NSLog(@"i am you father");}//-(int)getyourfathername{//name=6;//return name;//}@end@interface Son :Father-(void)visit:(int)a;@end@implementation Son-(void)visit:(int)a{self->name=a+100;NSLog(@"visit display:%d",name);}@endint main(int argc,char *argv[]){@autoreleasepool{Son* son1=[[Son alloc]init];[son1 visit:888];//NSLog(@"output:%d",[son1 getyourfathername]);//son1->name=3;//NSLog(@"the name of son is:%d",son1->name);[son1 info];}return 0;}
0 0
- OC学习中关于@private@protected@pakege@public的访问权限和继承问题
- public、protected和private访问权限以及继承问题
- 关于private、protected、public访问权限问题
- C++中public,protected,private派生类继承问题和访问权限问题
- C++中public,protected,private派生类继承问题和访问权限问题
- public protected private 成员函数和成员变量在public protected private 继承后访问权限问题
- public protected private 成员函数和成员变量在public protected private 继承后访问权限问题
- 关于public, private 和 protected继承中对基类成员的访问
- C++中的 public和private以及protected派生类继承问题和访问权限问题
- public,private,protected的区别,继承方法与访问权限
- C++中 public protected private 访问权限
- java类的访问权限问题(public default private protected)
- java 中 private public protected default 访问权限的区别
- Java中 public、private、protected 访问权限的区别
- private,protected,public的访问权限
- JAVA的public,private,protected访问权限
- public,protected,default ,private的访问权限
- 关于private、protected、public、friendly访问以及super的问题
- 初学HTML5--盒子模型
- Python从小看到大
- 第一次实习面试总结
- uva11090 Going in Cycle!!题解(负环)
- Python练习100例-18
- OC学习中关于@private@protected@pakege@public的访问权限和继承问题
- 素数心得
- PHP安全编程之网站安全设计的一些原则
- 关于Django的配置思路以及涉及到的知识
- Hibernate get()和load()的区别
- Java 集合框架分析:PriorityBlockingQueue java1.8
- LeetCode进阶之路( Wildcard Matching)
- 【排序算法】之归并排序
- php Note