A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© mazhichao 中级黑马   /  2015-7-1 22:51  /  820 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

匿名类的概念
        匿名类的使用方法
                先定义一个车类
        @interface car:NSObject
        {
                int _speed;
        }
        -(void) stop;
        @end
        //实现类
        @implementation car
        -(void)stop
        {
                NSLog(@“ting”);
        }
        @end
        @interface person:NSObject
        -(void) gohome:(car *)car;
        @end
        @implementation person
        -(void)gohome:(car*)car
        {
                [car stop];
        }
        @end
                1、使用匿名类访问实例变量(只能访问一次)       
                        以后再访问,实际上访问新的空间
                [car new]->_speed = 250;
                NSLog(@“_speed = %d”,[car new]->_speed );        //打印结果为0,因为匿名类只能访问一次,
                2、使用匿名的类,可以调用方法
                [[car new] stop];  == [[[car alloc ] init] stop]
                [[car alloc] init]  等价与[car new]

匿名类作为方法的参数
        person *p = [person new];
        car *c = [car new];
        1、[p go home:[car new]];
        2、[[person new] go home:[car new]];
       
匿名类的优缺点
        优点:可以简化代码,方便方法调用
        缺点:匿名对象实例化以后,只能正确的使用成员变量一次

2 个回复

倒序浏览
完全手写嘛?厉害啊!
回复 使用道具 举报
学习了~~~~~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马