热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

网讯IOS笔试题

网讯IOS笔试题答案是我自己的想法仅供参考1程序在内存中运行时,内存分几个区?各自用途?答:栈区由编译器自动分配释放存放函数

网讯IOS笔试题
答案是我自己的想法 仅供参考

1 程序在内存中运行时,内存分几个区?各自用途?
答:
栈区 由编译器自动分配释放存放函数的参数值,局部变量的值等。在高级语言中不需要显式的分配和释放
堆区 一般由程序员手动分配释放,如果不释放可有由OS释放。
数据区 存储全局和静态变量。初始化的全局和静态变量在一块区域,未初始化的放在相邻的一块区域,程序结束后由系统释放。
代码区 存放函数体的二进制代码。

2 引用与指针有什么区别?

引用是给变量起一个别名 也就是一个变量有两个名字 他们是同一块空间
指针是分配一块内存用来保存变量的地址 间接引用变量

3 int retVal = UIApplicationMain(argc, argv, nil, nil); 是什么意思?

对UIApplication对象进行了初始化,这个方法除了argc 和 argv 参数外,另外这个函数还有2个两个字符串参数来识别UIApplication类和UIApplication代理类,在这里默认是2个nil,第一个参数为nil就默认把UIApplication类作为缺省值进行初始化,可以在这里不填nil而是使用自己定义的UIApplication子类。至于第二个参数nil就设置为nil就把模板生成的HelloWorldAppdelegate类作为默认值。

4

5

6 保存一个变量到本地,列举两个简单的方法

直接写入writeToFile 支持NSString NSArray NSDictionary
实现NSCoding NSCopy 协议

7 如果UIView *view 已经实例化 在view 仅添加了N个UIButton类的实例,这些button不是全局的,并且button已经用tag区分开,如何快速找出其中指定的一个button改变它的某个属性?
答 [view subViewsWithtag: ];

8 当A类中的某个方法执行到某处时, 这时想在B类中执行某个方法,如何做,举出一个方法说明?
答 在A类初始化一个B类的成员就可以调用B类的方法

9 下面代码中obj2是否需要dealloc?
ClassA *obj1 = [[ClassA alloc] init];
ClassA *obj2 = obj1;
[obj1 hello]; //输出hello
[obj1 de];
[obj2 hello]; //程序能否执行到这一行?
[obj2 dealloc];
答 不需要 他和obj2指向的是同一块空间

10

11 类方法创造的对象要不要用release释放?
答 不需要 这个对象被放到自动释放池中

12 下面请求数据用了什么协议,请求的数据格式是什么?
UIWebView *webView = [[UIWebView alloc] initWithFrame:self.view.frame];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:http://pzpromop.s3.amazonaws.com/PromoNeutral.html]]];
[self.view addSubview:webView];

13 想传输一张图片,可以用什么协议传输?http ftp,

14 用NSURL初始化的NSData对象,用哪个类去解析?

15 OC中加号方法与减号的区别?

加号方法是类方法 属于静态方法
减号方法是实例 必须由类的实例来调用

16 如何修饰私有变量? ??问老师

17 建一个工程用到最基本的两个框架是什么?
答 cocoa Touch框架 Function框架

18 一个UITableView的实例,重新加载数据的方法是什么?
答 viewDidLoad??reloadData

19 写一个委托的interface

@protocol SimpleProtocol
-(void)doSomething:(NSString *)str;
@end

@interface SimpleClass:NSObject{
}
@end

@implementation SimpleClass
-(void) doSomething:(NSString *)str{
NSLog(str);
}
@end

20 OC中有没没多重继承? 如果没有用什么方法替代?
答 没有多重继承 可以委托的模型来替代

21 #import和#include的区别 @class
答 防止重复包含 @class类的前置声明 会在下边类的声明中包含某个类的对象

22 self.name = "object" name = "object"的区别

self.name 需要要合成属性然后系统会默认生成set get方法 所以在赋值是会调用set方法
name = "object"则直接赋值

23 实例化一个UITableView对象 要求写出关键语句
UITableView *my &#61; [[UITableView alloc] initWithFrame:<#(CGRect)frame#> style:<#(UITableViewStyle)style#>];
my.delegate &#61; self;
my.dataSource &#61; self;


推荐阅读
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • 本文介绍如何在 Android 中自定义加载对话框 CustomProgressDialog,包括自定义 View 类和 XML 布局文件的详细步骤。 ... [详细]
  • 一个建表一个执行crud操作建表代码importandroid.content.Context;importandroid.database.sqlite.SQLiteDat ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • 本文介绍了如何利用Struts1框架构建一个简易的四则运算计算器。通过采用DispatchAction来处理不同类型的计算请求,并使用动态Form来优化开发流程,确保代码的简洁性和可维护性。同时,系统提供了用户友好的错误提示,以增强用户体验。 ... [详细]
  • 本文详细介绍了一种利用 ESP8266 01S 模块构建 Web 服务器的成功实践方案。通过具体的代码示例和详细的步骤说明,帮助读者快速掌握该模块的使用方法。在疫情期间,作者重新审视并研究了这一未被充分利用的模块,最终成功实现了 Web 服务器的功能。本文不仅提供了完整的代码实现,还涵盖了调试过程中遇到的常见问题及其解决方法,为初学者提供了宝贵的参考。 ... [详细]
  • 本文介绍了如何利用 Delphi 中的 IdTCPServer 和 IdTCPClient 控件实现高效的文件传输。这些控件在默认情况下采用阻塞模式,并且服务器端已经集成了多线程处理,能够支持任意大小的文件传输,无需担心数据包大小的限制。与传统的 ClientSocket 相比,Indy 控件提供了更为简洁和可靠的解决方案,特别适用于开发高性能的网络文件传输应用程序。 ... [详细]
  • 本文深入探讨了Java多线程环境下的同步机制及其应用,重点介绍了`synchronized`关键字的使用方法和原理。`synchronized`关键字主要用于确保多个线程在访问共享资源时的互斥性和原子性。通过具体示例,如在一个类中使用`synchronized`修饰方法,展示了如何实现线程安全的代码块。此外,文章还讨论了`ReentrantLock`等其他同步工具的优缺点,并提供了实际应用场景中的最佳实践。 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • 2018年9月21日,Destoon官方发布了安全更新,修复了一个由用户“索马里的海贼”报告的前端GETShell漏洞。该漏洞存在于20180827版本的某CMS中,攻击者可以通过构造特定的HTTP请求,利用该漏洞在服务器上执行任意代码,从而获得对系统的控制权。此次更新建议所有用户尽快升级至最新版本,以确保系统的安全性。 ... [详细]
  • 掌握Android UI设计:利用ZoomControls实现图片缩放功能
    本文介绍了如何在Android应用中通过使用ZoomControls组件来实现图片的缩放功能。ZoomControls提供了一种简单且直观的方式,让用户可以通过点击放大和缩小按钮来调整图片的显示大小。文章详细讲解了ZoomControls的基本用法、布局设置以及与ImageView的结合使用方法,适合初学者快速掌握Android UI设计中的这一重要功能。 ... [详细]
  • 技术分享:深入解析GestureDetector手势识别机制
    技术分享:深入解析GestureDetector手势识别机制 ... [详细]
  • Flutter 2.* 路由管理详解
    本文详细介绍了 Flutter 2.* 中的路由管理机制,包括路由的基本概念、MaterialPageRoute 的使用、Navigator 的操作方法、路由传值、命名路由及其注册、路由钩子等。 ... [详细]
  • Spring – Bean Life Cycle
    Spring – Bean Life Cycle ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
author-avatar
Ken張創彬
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有