黑马程序员技术交流社区
标题:
编译检查与运行检查
[打印本页]
作者:
john-sang
时间:
2016-8-12 15:44
标题:
编译检查与运行检查
.什么是编译检查
编译检查:程序运行之前的检查,就是检查指针定义的类型中是否拥有某个属性和方法
例如:
HMPerson *student = [NSString new]//此时只是编译警告但不会报错,因为OC是弱语言,任意指针可以指向任意对象
[student test]//此时会编译报错,因为HMPerson里没有test这个方法
什么是运行检查:
运行检查:程序运行过程中的检查,就是检查指针指向的对象中是否拥有某个属性和方法
例子:
HMPerson *student = [NSString new]//此时只是编译警告但不会报错,因为OC是弱语言,任意指针可以指向任意对象
[student test]//此时会运行崩溃,因为HMPerson里没有test这个方法
作者:
anan安
时间:
2016-8-15 09:13
有时候 这个指针指向的对象有方法 但是指针的类型类没有方法 编译会报错 这时用 Id 指针,不参加编译!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2