zoukankan      html  css  js  c++  java
  • ios面试题

    1.控制器创建的方式?

    1).alloc init方式创建

    在AppDelegate中添加

    UIViewController * vc = [[UIViewcontroller alloc]init];

    self.window.rootViewController = vc;

    [self.window makeKeyAndVisible];

    2)UIstoryboard加载控制器

    UIViewController * vc = [[UIStoryboard storyboardWithName:()storyboardBundle()]instantiateViewControllerWithIdentifier()];

    3)从Xib中创建

    2.分类的用途?分类能定义成员变量吗?

     分类是对现有类的拓展,分类只能拓展方法,不能拓展属性

    3.readwrite readonly assign copy nonatomic属性的作用

    readwrite readonly 设置可供访问级别

    assign setter方法直接复制,不济宁retain操作,为了解决循环引用问题

    retain setter方法对参数进行release旧值在retain新值

    copy setter方法进行欧诺个Copy操作,与retain处理流程一样,先旧值release,再Copy出现对象,retainCount为1.这是为了减少对上下文的依赖而引入的机制

    nonatomic,非原子性访问,不加同步,多线程并发访问会提高性能。注意,如果不加此属性,则默认是两个访问方法都为院子型事物访问。

    4.在一个对象方法里面:self.name = @"aaa"与name = @"aaa"有什么区别

    self.name = @"aaa";会调用对象的setter方法

    name = @“aaa”直接赋值

    5.请简述self.name = nil的机制,以及与[name release]的区别

    self.name = nil; //使用nil参数调用setName方法

    [name release]生成的访问器将自动释放以前的name对象

    6.请简要说明viewDidLoad和viewDidUnLoad何时调用,didReceiveMemory

    viewDidLoad在view从nib文件中初始化时调用,loadView在controller的view为nil时调用

  • 相关阅读:
    SELECT 的6大子句
    MySQL关联查询
    MySql常用函数
    自动升压降压充电模块 最高25.2V
    压力校准仪开发日志--2017-10-30-2
    动压和静压
    上海无人面馆
    皮托管
    SOC
    LDO
  • 原文地址:https://www.cnblogs.com/fanxinguu/p/4532986.html
Copyright © 2011-2022 走看看