您的位置:首页 > 其它

实例变量修饰符

2015-04-05 21:52 302 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!
-------

 实例变量修饰符

/*

 实例变量修饰符 (访问控制)

 

 1> @public 共有的,公共的,在任何地方都可以被访问

 

 2> @protected 受保护的,在当前类和他得子类(派生)中使用

 

 3> @private 私有的,它修饰的实例变量,只能在当前类中使用

 

 

 实例变量修饰符 (访问控制)的作用域

 

 从定义的位置开始,向下遇到另外不同类型的修饰符就结束了

 如果没有遇到其他类型的修饰符,此时到实例变量声明的"}"结束

 */

#import <Foundation/Foundation.h>

@interface Animal : NSObject
{

    

@public      
//可以在当前类和子类中使用以及其他任何地方都可以使用
   
int _age;

    

@protected   
//可以在当前类和子类中使用
   
int _speed;

    

@private     
//可以被子类继承,但是不能被子类访问
   
int _color;

    
}
-(void)eat;
-(void)run;

@end

@implementation Animal
-(void)eat{

    
    NSLog(@"动物在吃");
}
-(void)run{

    
    NSLog(@"动物在疯跑");
}

@end

@interface Dog : Animal

- (void)lookHome;
- (void)test;
- (void)testColor;

@end

@implementation Dog

- (void)lookHome
{
    _age =
100;
    NSLog(@" _age = %d",_age);
    NSLog(@"看家");
}
- (void)test
{
    _speed =
100;
    NSLog(@"速度是%d",_speed);
}
- (void)testColor
{

//    _color = 1;

//    NSLog(@"颜色是%d",_color)   _color被@private修饰,可以被继承,但是不可以访问
}

@end
int main(int argc,
const char * argv[]) {

    @autoreleasepool {

        
        Dog *d = [Dog new];
        [d lookHome];
        [d test];
    }
   
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: