Objective-c学习之路


1.#import用途

    同c语言中的#include 一样拷贝文件内容

    可以防止多次重复拷贝文件内容

2.主头文件

   每一个框架如Founcation等都有一个主头文件,包含了所有的文件声明。

3.程序混合

  在oc的原文件中可以写任何c语言代码,但是如果要写c++代码的时候要把文件后缀改成.mm的形式

4.方法

   对象方法:减号开头

                  只能通过对象来调用,可以访问实例变量

   类方法:加号开头

               由类名直接调用,不能访问实例变量

               执行效率高

               允许类方法名和对象方法重名

5.继承

   子类和父类中不允许有同名的成员变量,方法可以覆盖

6.多态

   oc是弱语法 在对象附值的时候 是动态检测对象的真实类型,对象不匹配只会提出警告。

7.property和synthesize

   @property是默认生成属性的get和set方法声明 

   4.4以后@property也会生成方法实现(可以不写@synthesize),会默认访问下划线开头的变量

   @synthesize 生成方法实现  如果成员变量不存在会自动生成一个成员变量

   @synthesize name 会默认访问名称一样的成员变量

8.Category

   分类作用:不改变原来类的内容,增加新的方法

   分类中可以访问类中的成员变量,不能添加新的变量

    分类中可以覆盖类中的方法,覆盖方法调用优先级 分类(最后编译的类)--原来的类--父类

9.load和initialize

   程序启动时候会加载所有的类,加载完会调用每个类的load方法

  第一次使用某一个类时会调用initialize  有分类的时候initialize会调用分类中的

10.description

  NSLog打印的时候会默认调用方法的 description方法,可以重载description方法

  NSlog不能输出中文的时候可以换printf

11.SEL类型

  SEL:@select其实是对方法进行包装成SEL类型的数据,去找对应方法地址,然后找到对应方法



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值