iOS学习(OC语言)知识点整理

一、OC基础知识

1)#import  用于导入头文件,预处理阶段加载引用,只加载一次。

2)OC 依赖于Foundation框架下的头文件Foundation.h,此文件必须引用加载。

3)相较于C语言的导入头文件,头文件需要加上条件编译(#ifndef #define  #endif):防止头文件被多次包含

4)OC中关键字前面添加@符,字符串前面也需添加@符。

5)@autoreleasepool自动释放池:应用程序执行的语境,好处:应用程序会自动对内存进行管理

6)NSLog是OC中的输出函数,类似于C中printf,区别于printf,可以显示进程信息和时间,会自动换行,

输出显示格式为   NSLog(@"%@人民解放军","中国");//结果:中国人民解放军

7).h 文件中interface声明一个类,后面是类名(:NSOjbect   表示继承父类NSObject)@end表示类声明结束

8)interface 用于声明类 默认是@protected (受保护的成员);@interface中只能写方法的声明(不能写实现)

9).m文件内 @implementation中只能写方法的实现(不能写声明)

10)类的访问级别说明

1、@public 公有的成员,本类的成员方法,和其他的方法都可以访问

2、@protected  保护型的成员,本类和本类的子类的方法可以访问

3、@private 私有的成员,只能被本类的方法访问

4、@package  处于同一个框架中可以访问,介于private和public之间

11)类的命名规范遵循驼峰命名原则。

12)方法的声明,默认的是public方法;声明格式:+/- (返回类型) 方法名:参数

1、-(减号)声明的方法为实例方法,只能通过实例调用,可直接操作成员变量。

2、+(加号)声明的方法为类方法,只能用类名调用,不可直接操作成员变量,需要用self点出成员变量。

3、实例方法可以和类方法同名。

13)类实例化的两种方法

1、使用 alloc、init方法 例如:  Person *p=[[Person alloc]init];  alloc表示为对象在堆中开辟一片内存空间;init 表示初始化类对象。

2、使用new关键字,例如: Person *p=[Person new];  一般不建议使用此方法。

14)set和get方法的使用

1、set方法用于给某个成员变量赋值,一般以set开头,接着变量名,带一个参数,参数类型与成员变量类型相同,没有返回值。

2、get方法用于获取某个成员变量的值,是实例方法,一般与成员变量名相同,(可以不加get在方法前面),没有参数,有返回类型,返回类型与成员变量的类型相同。

15) 带多个参数的方法的使用;+/-(返回类型)标识符:(参数类型)参数名 标签名:(参数类型)参数 名…;第一个参数以后的

参数建议添加标签名,可增强代码 的可读性;不添加即为匿名标签. 例如:  -(void)setName:(NSString *)name andAge:(int)age ;

16)实例方法与类方法的区别

1、实例方法之间可以使用self互相调用,类方法不可以。

2、实例方法可以操作成员变量,类方法不可以。

3、类方法调用直接用类名,不需要另外构建实例。

17)self 表示当前对象/类(self在实例方法中指当前对象,在类方法中指当前类);可以访问当前对象的成员变量.

iOS 阶段学习第11天笔记(OC基础知识)的更多相关文章

  1. iOS 阶段学习第22天笔记(JSON数据格式介绍)

    iOS学习(OC语言)知识点整理 一.JSON数据格式 1)概念:json是一种网络数据传输格式,有值/对象:{“A”:1,”B”:”2”…}词典:对象的序列:[,,,,,]数组两种数据类型 2)UR ...

  2. iOS 阶段学习第25天笔记(iOS沙盒机制介绍)

    iOS学习(OC语言)知识点整理 一.iOS沙盒机制介绍 1)概念: 每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用放入文件 系统隔离,ios系统不允许访问 其他应用的应用沙盒 ...

  3. iOS阶段学习第20天笔记(MRC内存管理)

    iOS学习(OC语言)知识点整理 一.OC中的内存管理 1)概念:内存管理的对象为所有继承了NSObject的对象,对基本数据(如:int .float.double...)无效      OC中采用 ...

  4. iOS阶段学习第19天笔记(协议-Protocol)

    iOS学习(OC语言)知识点整理 一.关于协议(Protocol)的介绍 1)概念:协议指多个对象之间协商的一个接口对象,协议提供了一些方法用在协议的实现者和代理者      之间通讯的一种方式 2) ...

  5. iOS阶段学习第17天笔记(NSFileManager-NSFileHandle-文件操作)

    iOS学习(OC语言)知识点整理 一.单例模式 1)单例是一种编程思想,一个设计模式,与语言无关在采用了单例对象的应用程序中,需要单例类自行提供实例化单例对象, 不管实例化单例对象多少次,只有一个对象 ...

  6. iOS阶段学习第15天笔记(NSArray与NSMutableArray 数组)

    iOS学习(OC语言)知识点整理 一.OC中的数组 1)数组:也是一个对象,数组中存放的是对象的地址,可以存放任意类型对象的地址,只能是对象不能是具体的数值,数组是有序的,      可以存放重复的元 ...

  7. iOS阶段学习第14天笔记(NSString与NSMutableString)

    iOS学习(OC语言)知识点整理 一.OC字符串的操作 1)OC中字符串分为两种: 1.不可变字符串NSString:不能修改对象内容,但是可以改变对象的指针. 2.可变字符串NSMutableStr ...

  8. iOS 阶段学习第七天笔记(函数、递归)

     iOS学习(C语言)知识点整理笔记 一.函数 1)概念:具有特定功能的代码块的封装 2)函数的定义: 函数类型+函数名(形参列表) 函数类型 函数名(形参类型1  形参名1,形参类型2   形参名2 ...

  9. iOS阶段学习第四天笔记(循环)

    iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ }  两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...

随机推荐

  1. windows进程通信 -- WM_COPYDATA消息

    WM_COPYDATA消息,在win32中用来进行进程间的数据传输. typedef struct tagCOPYDATASTRUCT { // cds DWORD dwData; DWORD cbD ...

  2. JavaScript高级-定义函数(类)方法

    1.定义普通函数(常用) //1.普通函数 function defineFun1(p1, p2) { return p1 + p2; } 2.定义匿名函数(最常用) //2.匿名函数 var def ...

  3. java 内存观察

    总结一下上周的工作. 主要就是用到了 jmap jvisualvm jmap 用来生成jvm堆内存的bin文件 jvisualvm则更强大. 待续.

  4. PHP基础 创建

    注意:1.网页文件放在wamp中的www文件下: 2.www文件下不能出现中文: 网页浏览的方法: 1.没有建立站点:localhost/文件所在位置 2.建立站点: (1)站点-新建站点-打开对话框 ...

  5. [读书笔记]C#学习笔记一: .Net Framwork

    前言: 一次偶然的机会  在园子里看到@Learning hard 出版的一本书: <<C#学习笔记>>, 然后买来 一直到现在读完, 感觉很不错, 适合入门, 书中内容是从C ...

  6. paip.mysql 性能测试by mysqlslap

    paip.mysql 性能测试by mysqlslap   作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog. ...

  7. Android Activity 常用技巧

    1.设置 Activity 背景色为透明 在style.xml里面声明: <style name="TranslucentActivityStyle" parent=&quo ...

  8. IOS开发之控件篇UICollectionViewControllor第一章 - 普通介绍

    1.介绍 UICollectionView和UICollectionViewControllor是IOS6.0后引入的新控件 使用UICollectionView必须实现三个接口: UICollect ...

  9. 开源项目IPProxys的使用

    前几天看了一下github上,IPProxys开源项目(https://github.com/qiyeboy/IPProxys)快100star了,看来大家对这个项目还是比较感兴趣的.最近一直没更新文 ...

  10. 使用Depth Texture

    使用Depth Textures: 可以将depth信息渲染到一张texture,有些效果的制作会需要scene depth信息,此时depth texture就可以派上用场了. Depth Text ...