iOS面试题1、在一个对象的方法里面:self.name=@“object”;和name=@”object”有什么不同吗?答:self.name=”object”:会调用对象的setName()方法;name=“object”:会直接把object赋值给当前对象的name属性。2、什么时候用delegate,什么时候用Notification?delegate和notification的区别答:delegate针对one-to-one关系,用于sender接受到reciever的某个功能反馈值。notification针对one-to-one/many/none,reciver,用于通知多个object某个事件。区别1).二者都用于传递消息,不同之处主要在于一个是一对一的,另一个是一对多的。2).notification通过维护一个array,实现一对多消息的转发。3).delegate需要两者之间必须建立联系,不然没法调用代理的方法;notification不需要两者之间有联系。3.浅拷贝和深拷贝的区别?浅拷贝:只复制指向对象的指针,而不复制引用对象本身。深拷贝:复制引用对象本身。内存中存在了两份独立对象本身,当修改A时,A_copy不变。4.进程和线程的区别?同步异步的区别?进程:是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程:是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.同步:阻塞当前线程操作,不能开辟线程。异步:不阻碍线程继续操作,可以开辟线程来执行任务。编程题30张不同的图片(image0-29)随机选出5张并且不得重复