小马哥视频笔记-OC基础知识
2016-11-06 本文已影响210人
默默学习
复习一遍OC基础知识,做一个完整笔记
[toc]
OC初步认知
OC是兼容C语言的
OO:面向对象
OOP:面向对象编程
#import和#include的区别
1. #import是OC导入头文件的关键字,#include是C/C++导入头文件的关键字
2. #import会自动导入一次,不会重复导入,#include重复导入会报错
3. #import <>引入系统文件,#import ""导入用户自定义的文件
如何编写类的声明
以@interface开头,以@end结尾,然后在class name对应的地方协商事物名称,也就是类名
注意:
- 类名首字母必须大写
- OC声明类中,属性必须写在大括号里面
- 编写OC属性的时候建议在首字母前面加上_
如何编写类的实现
以@implementation开头,以@end结尾,然后在class name对应的地方写上类名
注意:
- 类名首字母必须大写
- OC声明类中,属性必须写在大括号里面
- 编写OC属性的时候建议在首字母前面加上_
类调用new方法,内部会做三件事
- 为类创建出来的对象分配存储空间
- 初始化对象中的属性
- 返回初始化对象分配的指针地址(使用指针接收地址)
OC类中方法分为: 类方法和对象方法
- 类方法用类名调用,对象方法只能用对象调用
- OC中的类方法用+表示,对象方法用-表示
类方法和对象方法区别
- 对象方法必须用对象调用,类方法只能用类调用
- 对象方法可以直接访问属性,类方法不可以直接访问属性
- 调用类方法的效率比调用对象方法的效率要高
- 类方法和对象方法可以相互调用
类方法的应用场景
如果方法中没有用到属性,就尽量用类方法,类方法的执行效率要比对象方法高,类方法一般用于定义工具方法
面向对象三大特性
- 封装
- 继承
- 多态
实例变量
实例变量修饰符的作用域:从出现的位置到下一个修饰符的出现
默认情况下,都是被保护的@protected
@public 可以在其他类,本类,子类中访问被public修饰的成员变量
@private 不可以在其他类与其子类中进行访问,在本类中可以进行访问
@protected 不可以在其他类中进行访问,在本类与其子类中可以进行访问
@package 介于public和private之间的,
OC中的私有变量/方法