1:默认的实例变量的作用域范围是:这个类体内.默认继承的实例变量可以直接使用。 2:实例变量的权限控制符号 3:默认是projected 4:oc中只支持单继承 5:共性的东西放在父类,个性的东西放在子类
下面使用汽车的继承关系来演示一下默认的权限(protected)
一:汽车Car.h
// // Car.h // Car // // Created by hmjiangqq on 14-1-22. // Copyright (c) 2014年 hmjiangqq. All rights reserved. // #import <Foundation/Foundation.h> @interface Car : NSObject { @protected //默认权限 int cID; //id float speed; //车速 NSString *name; //名称 } -(void)run; @end 二:汽车Car.m // // Car.m // Car // // Created by hmjiangqq on 14-1-22. // Copyright (c) 2014年 hmjiangqq. All rights reserved. // #import "Car.h" @implementation Car //实例化汽车的属性 -(id)init{ if(self=[super init]){ cID=1000; speed=120; name=@"小汽车"; } return self; } -(void)run{ NSLog(@"start ..."); } @end三:BMW.h // // BMW.h // Car // // Created by hmjiangqq on 14-1-22. // Copyright (c) 2014年 hmjiangqq. All rights reserved. // #import "Car.h" @interface BMW : Car @end四:BMW.m // // BMW.m // Car // // Created by hmjiangqq on 14-1-22. // Copyright (c) 2014年 hmjiangqq. All rights reserved. // #import "BMW.h" @implementation BMW -(void)run{ name=@"宝马"; NSLog(@"car name is %@\n",name); } @endmain.m // // main.m // Car // // Created by hmjiangqq on 14-1-22. // Copyright (c) 2014年 hmjiangqq. All rights reserved. // #import <Foundation/Foundation.h> #import "Car.h" #import "BMW.h" int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here... NSLog(@"Hello, World!"); Car *car=[[Car alloc]init]; [car run]; BMW *bmw=[[BMW alloc]init]; [bmw run]; } return 0; } |
【Objective-C】OC中的权限控制
原创jiangqq900826 ©著作权
文章标签 ios 类 objective-c 文章分类 iOS 移动开发
©著作权归作者所有:来自51CTO博客作者jiangqq900826的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
巧用 MyBatis Plus 实现数据权限控制
巧用 MyBatis Plus 实现数据权限控制
sql java List -
OC之【objective-c中结构体】
struct Date d = {2013
结构 ios objective-c #import -
【Objective-C】OC中点语法的内存管理
下面来一起学习一下点语法的内存管理 (一):赋值 assign:直接赋值,默认 retain:保留对象 copy:拷贝对象
内存 对象 内存管理 objective-c 点语法 -
Objective-C中的UIScrollView
Objective-C中的UIScrollView
开发技术 Objective-C中的UIScro