给初学者,OC知识的简单总结

1.面向对象 关注的是 解决问题的步骤

  面向对象 关注的是 解决问题需要哪些对象


// 类方法和对象方法的区别

2.类方法不能访问成员变量


// super使用场景

3.子类重写父类的方法时,想保留父类的一些方法


// 继承

4.继承的好处:抽取了公共代码

       坏处:代码的耦合性强


// 多态

5.多态:多种形态

  每个OC对象都有多态性

    1>父类指针指向父类对象

    2>父类指针指向子类对象


多态的好处: 增强了扩展性,降低耦合性

    局限性: 父类的指针不能调用子类特有的方法,只有强转为子类指针后才能调用


// init方法\点语法 的作用

6.init方法:称为构造方法,构造方法其实是用来初始化对象的

  点语法:就是用来调用setget方法


// @property参数

7.Xcode4.4:自动生成setget方法声明

  Xcode4.5:自动生成setget方法声明\实现,并增加_开头的成员变量


  控制set方法

**1>retain: release旧值,retain新值

  2>直接赋值,不做任何内存管理

  3>copy


// category(分类)

8.作用:在不改变类的情况下给一个类动态添加方法

  注意:分类可以访问原来的成员变量和方法,但不能添加成员变量


// protocol

9.只要遵守了这个协议,相当于拥有协议里面的所有方法声明

  NSObect:基协议


// block与函数的对比

10.

    1>可以保存代码

    2>有返回值

    3>有形参

    4>调用方式一样

    5>block可以放在任意位置

10.1

    block内部可以访问外面的变量

    默认情况下,block内部不能修改外面的局部变量

    给局部变量加上_block关键字,block内部就能修改这个局部变量

10.2

    利用typedef定义block类型

    typedef int (^myBlock)(int, int);

    // 以后就可以利用myBlock这种类型定义block变量

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值