`
咖啡动力
  • 浏览: 441810 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

IOS基础面试题(三)

阅读更多
1.When to use NSMutableArray and when to use NSArray?

什么时候使用NSMutableArray,什么时候使用NSArray?

答案:当数组在程序运行时,需要不断变化的,使用NSMutableArray,当数组在初始化后,便不再改变的,使用NSArray。需要指出的是,使用NSArray只表明的是该数组在运行时不发生改变,即不能往NSAarry的数组里新增和删除元素,但不表明其数组內的元素的内容不能发生改变。NSArray是线程安全的,NSMutableArray不是线程安全的,多线程使用到NSMutableArray需要注意。

2.Give us example of what are delegate methods and what are data source methods of uitableview.

给出委托方法的实例,并且说出UITableVIew的Data Source方法

答案:CocoaTouch框架中用到了大量委托,其中UITableViewDelegate就是委托机制的典型应用,是一个典型的使用委托来实现适配器模式,其中UITableViewDelegate协议是目标,tableview是适配器,实现UITableViewDelegate协议,并将自身设置为talbeview的delegate的对象,是被适配器,一般情况下该对象是UITableViewController。

UITableVIew的Data Source方法有- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;


3.How many autorelease you can create in your application? Is there any limit?

在应用中可以创建多少autorelease对象,是否有限制?

答案:无

4.If we don’t create any autorelease pool in our application then is there any autorelease pool already provided to us?

如果我们不创建内存池,是否有内存池提供给我们?

答案:界面线程维护着自己的内存池,用户自己创建的数据线程,则需要创建该线程的内存池

5.When you will create an autorelease pool in your application?

什么时候需要在程序中创建内存池?

答案:用户自己创建的数据线程,则需要创建该线程的内存池

6.When retain count increase?

什么时候内存计数会增加?

答案:见iOS面试题(一)

7.What are commonly used NSObject class methods?

类NSObject的那些方法经常被使用?

答案:NSObject是Objetive-C的基类,其由NSObject类及一系列协议构成。

其中类方法alloc、class、 description 对象方法init、dealloc、– performSelector:withObject:afterDelay:等经常被使用

8.What is convenience constructor?

什么是简便构造方法?

答案:简便构造方法一般由CocoaTouch框架提供,如NSNumber的 + numberWithBool:  + numberWithChar:  + numberWithDouble:  + numberWithFloat:  + numberWithInt:

Foundation下大部分类均有简便构造方法,我们可以通过简便构造方法,获得系统给我们创建好的对象,并且不需要手动释放。

9.How to design universal application in Xcode?

如何使用Xcode设计通用应用?

答案:使用MVC模式设计应用,其中Model层完成脱离界面,即在Model层,其是可运行在任何设备上,在controller层,根据iPhone与iPad(独有UISplitViewController)的不同特点选择不同的viewController对象。在View层,可根据现实要求,来设计,其中以xib文件设计时,其设置其为universal。

10.What is keyword atomic in Objective C?

在Objetive-C什么时原子关键字

答案:atomic,nonatomic见iOS面试题(一)

11.What are UIView animations?

UIView的动画效果有那些?

答案:有很多,如  UIViewAnimationOptionCurveEaseInOut     UIViewAnimationOptionCurveEaseIn     UIViewAnimationOptionCurveEaseOut    UIViewAnimationOptionTransitionFlipFromLeft   UIViewAnimationOptionTransitionFlipFromRight     UIViewAnimationOptionTransitionCurlUpUIViewAnimationOptionTransitionCurlDown

如何使用可见该博文

12.How can you store data in iPhone applications?

在iPhone应用中如何保存数据?

答案:有以下几种保存机制:

1.通过web服务,保存在服务器上

2.通过NSCoder固化机制,将对象保存在文件中

3.通过SQlite或CoreData保存在文件数据库中

13.What is coredata?

什么是coredata?

答案:coredata是苹果提供一套数据保存框架,其基于SQlite

14.What is NSManagedObject model?

什么是NSManagedObject模型?

答案:NSManagedObject是NSObject的子类 ,也是coredata的重要组成部分,它是一个通用的类,实现了core data 模型层所需的基本功能,用户可通过子类化NSManagedObject,建立自己的数据模型。

15.What is NSManagedobjectContext?

什么是NSManagedobjectContext?

答案:NSManagedobjectContext对象负责应用和数据库之间的交互。

16.What is predicate?

什么是谓词?

答案:谓词是通过NSPredicate,是通过给定的逻辑条件作为约束条件,完成对数据的筛选。


    predicate = [NSPredicate predicateWithFormat:@"customerID == %d",n];
    a = [customers filteredArrayUsingPredicate:predicate];

17.What kind of persistence store we can use with coredata?

和coredata一起有哪几种持久化存储机制?

答案:存入到文件、 存入到NSUserDefaults(系统plist文件中)、存入到Sqlite文件数据库
分享到:
评论

相关推荐

    iOS2018面试题

    根据给定的文件信息,以下是对“iOS 2018面试题”中涉及的知识点进行的详细解析: ### 技术基础知识 1. **Objective-C为何被称为动态语言:** - Objective-C作为一门面向对象的编程语言,其动态特性主要体现在...

    2018iOS面试题汇总

    ### 2018 iOS面试题汇总解析 #### 一、设计模式的理解及常见类型 设计模式是指在软件开发过程中,对于特定问题的一种普遍适用的解决方案。它代表着开发者们长期以来积累的经验教训,可以帮助我们更好地组织代码,...

    IOS基础面试题.pdf

    IOS基础面试题.pdf

    2018最新iOS面试题全集

    一、iOS基础 这份资料可能会涵盖iOS开发的基础知识,包括Objective-C或Swift语言基础,例如类、对象、协议、继承、多态等概念。Swift方面,可能还会涉及到枚举、结构体、可选类型、闭包、泛型等特性。另外,UIKit...

    iOS面试题(阿里)

    根据提供的信息,我们可以总结出这份文档是关于iOS面试题的一部分,特别强调了与阿里巴巴相关的面试题目。虽然原文中包含大量非可读字符,但通过整理和解析,我们能够提炼出以下关键知识点: ### dSYM 文件 1. **...

    2022年最新iOS面试题附答案.docx

    iOS 面试题附答案 本文主要讲解 iOS 面试题的相关知识点,包括类和结构体的区别、GCD 的概念和使用等。 类和结构体的区别 在 Swift 中,类是引用类型,结构体是值类型。值类型在传递和赋值时将进行复制,而引用...

    iOS开发基础面试题(非常全面且附详细解释

    ios基础面试题(非常全面且附详细解释) 适合初级ios开发人员 ios葵花宝典

    iOS各类面试题总结.zip

    这份名为"IOS各类面试题总结.zip"的压缩包文件包含了针对iOS开发者的全面面试准备资料。其中涵盖了多个知名互联网大厂如字节跳动、美团、腾讯和百度的面试题目,旨在帮助iOS开发者提升技能,顺利通过面试,实现职业...

    上海iOS最新面试题汇总

    iOS面试题通常涵盖了Objective-C(OC)的基础,Swift语言特性,iOS框架的应用,以及软件工程和设计模式等多个方面。这里,我们将深入探讨这些关键知识点。 一、Objective-C基础 1. **面向对象编程**:理解类、对象...

    iOS面试题

    ### iOS面试题详解 #### 1. UIView与CALayer的区别 - **定义与层次:**UIView和CALayer作为iOS开发中极为重要的两类视图层组件,它们分别处于不同的抽象层次。UIView是UIKit框架中用于构建界面的核心类,而CALayer...

    高级iOS面试题底层基础2020年.zip

    UI相关面试题.pdf Runtime面试题.pdf Runloop面试题.pdf OC底层面试题.pdf Block面试题.pdf Animation面试题.pdf 音视频学习从零到整(2).pdf 音视频学习从零到整(1).pdf 性能优化面试题.pdf 网络相关面试题...

    iOS一些常见面试题word

    在iOS开发领域,面试题是评估候选人技能的关键工具。这些题目通常涵盖Objective-C或Swift语言的基础,UIKit框架的使用,内存管理,多线程,网络编程,数据持久化,设计模式等多个方面。以下是一些iOS面试中常见的...

    iOS精华面试题 pdf和word版本.zip

    这份名为"IOS精华面试题 pdf和word版本.zip"的压缩包文件,显然是为了帮助iOS开发者准备面试而精心编纂的资源。它包含了PDF和Word两种格式,这为学习者提供了方便,可以根据个人喜好选择阅读方式。从描述来看,这份...

    iOS面试题汇总

    1. **iOS面试题-非技术部分_9347523.docx**: 这个文档可能涵盖职业规划、团队协作、项目管理、沟通技巧、问题解决能力等非技术面试问题。面试官可能会询问你的工作经验、团队合作中的角色、如何处理冲突、项目延误...

    iOS面试题及答案

    iOS 面试题及答案 本文总结了 iOS 面试题及答案,涵盖了 OC 语言的基本特点、#import 与 @class 的区别、类目优缺点、内存管理的基本原则、ARC 技术、垃圾回收机制、深浅复制、堆栈区差别、用户自定义对象的拷贝、...

    iOS 工程师面试题

    iOS工程师面试题主要涵盖了许多核心概念和技术,包括内存管理、对象通信、生命周期管理、文件操作、类声明与实现、视图层次、用户交互以及多线程等。以下是对这些知识点的详细解释: 1. **属性作用**:readwrite和...

    ios考试面试题

    在iOS开发领域,面试通常会涉及多个方面的知识,包括但不限于Objective-C或Swift语言基础、UIKit框架、内存管理、多线程、网络编程、数据持久化、设计模式、性能优化等。下面将根据这些核心知识点进行详细的阐述。 ...

    2018秋招iOS面试总结

    在2018年的秋季招聘中,iOS面试成为众多求职者关注的焦点。这个时期的面试不仅反映了当时的iOS技术趋势,也为后来的求职者提供了宝贵的参考经验。以下是对2018年秋招iOS面试中常见知识点的详尽解析: 1. **...

    iOS 面试题整理

    总结一下,iOS面试题涉及的知识点是iOS开发的基础和进阶内容,包括对象的复制原理、类别的扩展、继承的概念、协议的使用以及KVC和KVO这两大数据绑定技术。掌握这些知识点对于iOS开发者来说至关重要,能够帮助他们在...

Global site tag (gtag.js) - Google Analytics