感觉之前面试官问的这个问题, 大多数人回答的不够准确,最近经常使用kvo发现了一些问题.我就直接进入正题了.
如果kvc在取值的时候找不到key,是直接崩掉的.
使用kvc赋值的时候如果person类里没有这个key,也是蹦掉,说person里找不到这name2这个属性.
接下来才是很多人会忽略的.
如果这个对象是个字典对象,用kvc进行赋值的时候,如果字典中没有这个key,就直接创建这个key,并且给这个key赋值, 如果有这个key就直接覆盖之前的值.
字典取值时,如果没有这个key,他并不会崩溃,而是直接取不到值,为null.