5.2 编程的三种错误类型