从Golang中的panic、defer和recover到错误处理的理解方式

Golang中的异常,不是用try-catch来处理的。很多Go的函数会返回多个参数,一般最后一个参数为error类型。

在Golang的设计哲学里:

  • 异常应该用对应的逻辑去处理,无法处理使程序无法继续的情况返回error。
  • error不是异常,是需要被记录到log中的使程序无法运行的情况
  • error位置的返回值为nil即认为没有错误。
  • panic会打断程序,输出错误日志,recover会取消panic的打断继续运行。
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×