腾讯2015春招移动、PC客户端开发面试精华:SQLite、视图、服务生命周期详解

需积分: 14 1 下载量 185 浏览量 更新于2024-09-07 收藏 26KB DOCX 举报
本资源是一份针对腾讯2015年春季招聘的移动和PC客户端开发面试练习卷合集,涵盖了Android和iOS平台的相关知识点。以下是主要内容概要: 1. **Android SQLiteOpenHelper的使用**: - Android中的`SQLiteOpenHelper`是一个辅助类,用于管理SQLite数据库。它提供了创建数据库和管理版本迁移的方法,如`getWritableDatabase()`和`getReadableDatabase()`。前者用于写入数据库,后者用于读取数据库。其他选项如`getDatabase()`和`getAbleDatabase()`可能是错误的拼写或不存在的方法。 2. **模态视图的专用属性**: - 在iOS中,模态视图有四种专用属性:`UIModalPresentationFullScreen`(全屏显示,iPhone默认)、`UIModalPresentationPageSheet`(iPad竖屏时全屏,宽度固定)、`UIModalPresentationFormSheet`(尺寸固定的540x620,保持不变)和`UIModalPresentationCurrentContext`(与父视图控制器呈现方式相同)。 3. **NSAssert宏**: - `NSAssert1`, `NSAssert2`, `NSAssert3`, 和 `NSAssert4` 是Objective-C中的断言宏,用于在编译期间检查条件是否为真,帮助开发者在代码运行前发现潜在问题。 4. **Android Service生命周期管理**: - 当Android服务第一次启动时,会依次调用`onCreate()`和`onStart()`方法。如果服务已启动,仅执行`onStart()`方法,不重新调用`onCreate()`。 5. **GLSurfaceView特性和OpenGL ES**: - `GLSurfaceView` 是Android中的一个组件,用于在Android平台上实现OpenGL ES图形渲染。它管理一个`Surface`,用于在设备屏幕上显示渲染结果;管理`EGLDisplay`,支持OpenGL内容渲染到Surface;并且支持在独立线程中运行渲染器,以提高性能并与UI线程分离。此外,它还可以直接从内存或其他硬件接口获取图像数据。 6. **iOS导航设计模式**: - iOS中常见的三种导航设计模式包括:平铺导航(一种简单的导航结构)、标签导航(类似标签页的切换)、树形导航(适用于层级结构的数据展示)以及模态视图导航(弹出式视图展示,通常用于处理用户交互或确认操作)。 7. **Object-C作为runtime language**: - Object-C是一种runtime language,意味着它的数据类型确定不是在编译阶段确定的,而是延迟到运行时动态绑定。这使得对象的行为可以在运行时根据需要进行调整。另一个关键特性是,它允许在运行时决定一个对象的具体类别,并调用相应的实例方法,体现了其灵活和动态的面向对象编程特性。 8. **继承和类别的决定**: - 如果A类继承自B类,编译时并不会知道具体A类会继承哪些B类的方法,这种决定会在运行时动态地基于实际继承关系进行。 这份练习卷集合为应聘者提供了深入理解Android和iOS开发实践的机会,测试了他们在数据库管理、界面呈现、系统服务、图形渲染和导航设计模式等方面的专业知识。