美文网首页
iOS的动态性

iOS的动态性

作者: 丶逐渐 | 来源:发表于2016-02-25 00:03 被阅读281次

1、iOS的动态性来自三个方面:动态类型、动态绑定、动态载入、SEL类型

1、动态类型<弱类型>(id):在代码的运行阶段判断代码的类型,使用id类型可以让应用在“运行时”使用任何类型来替换。动态类型让程序更加灵活,但是会使数据的统一性降低和代码的可读性。我们常用静态类型<强类型>(如NSString),使用静态类型编译器可以完全分析你的代码,这让代码的性能和可预知性更高。

2、动态绑定:让代码在运行时判断需要调用什么方法,而不是在编译时。动态类型和动态绑定使得选择哪个接收者已经调用什么方法都放到运行时去完成.

3、动态载入:应用程序可以根据需要加载可执行代码以及资源,而不是在启动时就加载所有资源。

4、SEL类型iOS在编译的时候会根据方法的名字(包括参数序列),生成一个用来区分这个方法的唯一的ID,这个ID是SEL类型的,SEL的本质就是类方法的编号[函数地址]。(类似C语言里面的函数指针,但是OC的类不能直接使用函数指针,这样只能做一个@selector语法来取。注意:@selector是查找当前类(含子类)的方法。)

相关文章

  • iOS 的动态性

    原文:iOS面试题大全 iOS 的动态性来自三个方面:动态类型、动态绑定、动态载入、SEL类型①、动态类型<弱类型...

  • iOS 的动态化

    iOS的动态性来自三个方面:动态类型、动态绑定、动态载入、SEL类型 动态类型Dynamic typing-det...

  • iOS的动态性

    1、iOS的动态性来自三个方面:动态类型、动态绑定、动态载入、SEL类型 1、动态类型<弱类型>(id):在代码的...

  • iOS 动态属性 id 分析

    iOS的动态性中有一个很重要的属性就是id的动态性 id:一种动态属性,在编译过程中可以根据上下文,灵活的判定对象...

  • ios Runtime动态性分析

    Swift Runtime动态性分析 总结 纯Swift类没有动态性,但在方法、属性前添加dynamic修饰可以获...

  • iOS动态调用类方法

    iOS动态调用类方法(不带参数) iOS动态调用类方法(带参数) iOS动态调用类方法(有返回值) 优点 弱化连接...

  • WWDC2014之iOS使用动态库

    WWDC2014之iOS使用动态库 WWDC2014之iOS使用动态库

  • iOS一种动态栅格布局方案

    iOS一种动态栅格布局方案 iOS一种动态栅格布局方案

  • iOS---10--- _read_images 浅析 类的加载

    [toc] 前言 在iOS程序中会用到很多系统的动态库,这些动态库都是动态加载的。所有iOS程序共用一套系统动态库...

  • 10--- _read_images 浅析 类的加载

    [toc] 前言 在iOS程序中会用到很多系统的动态库,这些动态库都是动态加载的。所有iOS程序共用一套系统动态库...

网友评论

      本文标题:iOS的动态性

      本文链接:https://www.haomeiwen.com/subject/quabkttx.html