objective-c相关知识点

1,objective-c中实现线程同步:java

Mutexlock (互斥锁)、NSCondition lock (条件锁)消息传送c++

2,UDP和TCP:objective-c

TCP :传输控制协议,能够提供面向链接的、可靠的、点到点的通讯。数据库

UDP :用户数据包协议。提供非链接的不可靠的点到多点的通讯,是osi参考模型中一种无链接的传输层协议,提供面向事务的简单的不可靠信息传输。编程

3,TCP/IP 创建链接的过程:数组

在TCP/IP 协议中,TCP协议提供可靠的链接服务,采用三次握手创建链接;服务器

第一次握手:创建链接时,客户端发送链接请求到服务器,并进入SYN_SEND状态,等待服务器确认;数据结构

第二次握手:服务器收到客户端链接请求,向客户端发送容许链接应答,此时服务器进入SYN_RECV状态;函数

第三次握手:客户端收到服务器的容许链接应答,向服务器发送确认,客户端和服务器进入通讯状态,完成三次握手。线程

(所谓的三次握手,就是要有三次链接信息的发送、接收过程。TCP连的创建须要进行三次链接信息的发送、接收。)

4,全局变量能够定义在 被多个.c文件包含  的头文件中,在不一样的c文件中以static 形式来声明同名全局变量。前提是其中只能有一个c文件中对此变量赋初值,此时链接不会出错。

5,引用一个已经定义过的全局变量:

  • extern关键字
  • 也能够用引用头文件的方式。

若是用引用头文件的方式来引用某个在头文件中的全局变量,假定你那个变量写错了,那么编译期间会报错,若是用extern 方式引用时,假定你犯了一样的错误,那么在编译期间不会报错,而在链接期间报错。

6,数据结构:

数据结构是计算机存储、组织数据的方式。是指相互之间存在一种或多种特定关系的数据元素的集合。

一般,精心选择的数据结构能够带来更高的运行或者存储效率。

7,编程中,保存数据的方式:

数组、自定义类、文件操做,数据库

如:SQLite 、core data、 plist 、NSUserDefaults、file 

8,Sizeof 和strlen 的区别和联系:

Sizeof() 是运算符,能够用类型作参数,还能够用函数作参数,功能是得到保证能容纳实现所创建的最大对象的字节大小;Sizeof()不会把参数退化为指针,strlen()把参数退化为指针

strlen()是函数,要在运行时才能计算。参数必须是字符行指针且必须是以”\0″结尾的。功能为:返回字符串的的长度。

9,抽象类的定义,抽象类的做用:

在c++中,含有纯虚拟函数的类称为抽象类,他不能生成对象;

在java中,含有抽象方法的类称为抽象类,一样不能生成对象;

抽象类是不完整的,没有彻底实现,只能用做基类;不能实例化。

10,@interface和@property

@interface 申明一个类

@property就是申明2个函数,getter和setter,编译器会自动产生2个函数;

11,一个类的静态方法不须要release,静态方法就是类方法,类方法对象放在autorelease中

12,do while和while do:

  do while 是先执行后判断,条件不知足也要执行一次;

  while do 是先判断后执行,条件不知足就一次都不执行。

13,死循环:while(1){}、 for(;;){}

14,预处理指令#define声明一个常数代表一年中有多少秒(忽略润年问题):#define SECONS_PER_YER(60*60*24*365)UL

15,assign和retain ,copy:

  assign就是和普通语言的赋值同样,不改变引用计数;

  retain 在一个对象中保存该对象须要拥有的对象,对该对象引用计数+1,指针拷贝;

  copy 对NSString内容拷贝,拷贝以前都会释放旧的对象;

  readonly 表示这个属性是只读的,就是只生成getter 方法,不生成setter 方法。

  read write 设置可供访问级别

16,类之间的继承关系:

  UIResponder ,处理触摸,touchBegin、touchEnd ,nextResponder

 UIView的父类UIResponder 
相关文章
相关标签/搜索