我通常使用异常处理来优雅地抛出异常并处理它而不会导致应用程序崩溃。
我继承了一些到处使用断言的代码,并且应用程序在调试时崩溃了很多,每次断言失败时,都会出现断言失败错误。
很多时候,这些断言会检查某些东西是否不为空,如果为空,它会因断言失败而崩溃。
与做相比,这似乎完全适得其反,if(var!=null)
但我错过了什么吗?我是否错过了有关此代码设计范例的新奇事物?
我目前的断言是所有assert
调用都应该被注释掉,任何问题错误都应该检查空变量
我写了这篇文章,希望这个问题有一个实际的答案,谢谢!