iOS [NSNull objectForKeyedSubscript:]: unrecognized selector sent to instance

前言:

关于字典为 NSNull,取值造成崩溃,

-[NSNull objectForKeyedSubscript:]: unrecognized selector sent to instance 0x2007c9ee0

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull objectForKeyedSubscript:]: unrecognized selector sent to instance 0x2007c9ee0'

崩溃截图

“unrecognized selector sent to instance” 这种的,就是对象调用了不属于自己的方法造成的崩溃,由于 OC 代码在编译的时候并不能确定对象A的准确类型,在运行时候才会知道对象A是什么类型,那么,有可能在代码运行的过程中,A悄悄地改变了,A可能变成了父类的一个子类,A可能变成了nil,或者Null,A也可能变成了B。

你可能感兴趣的:(iOS [NSNull objectForKeyedSubscript:]: unrecognized selector sent to instance)