不能指望通过业务逻辑来为代码逻辑中的数据提供保障。

比如,不能想着“根据业务逻辑,程序运行到这里时这个数据肯定不为null”而 不在代码中做空指针的判断、处理。

业务逻辑是用户使用系统时的操作逻辑。但是用户不靠谱啊,谁知道他们会怎么祸害系统?不能指望他们会按照 你设想的流程去操作。

因而,业务逻辑是不靠谱的。代码逻辑中一定要有对空指针、越界等异常的判断和处理,不然,会死得很惨的。