tripleCC的技术博客

ʕ•̫͡•ʔ-̫͡-ʕ•͓͡•ʔ-̫͡-ʕ•̫͡•ʔ-̫͡-ʕ•͓͡•ʔ-̫͡-ʔ

Runtime应用之KVC

runtime可以以底层的角度来对一些实现方式进行更改,比如说KVC
首先,先来了解下KVC的底层原理:
key : value

  • 1.去模型中查找有没有setValue:,直接调用这个对象setValue:赋值
  • 2.如果没有setValue:,就在模型中查找_value属性
  • 3.如果没有_value属性,就查找value属性
  • 4.如果还没有就报错

Runtime基础

Objective-C的runtime语言使它具备了动态语言的特性,也就是平时所说的“运行时”。在runtime的基础上,可以做很多平时难以想到事,或者化简原先 较为繁杂的解决方案。
相对于静态语言,比如C以下程序

1
2
3
4
5
6
7
#include <stdio.h>
void run()
{}
int main()
{
  return 0;
}