错误处理,是非常重要的。在go语言中,错误处理被设计的十分简单。

如果做得好,会在排查问题等方面很有帮助;如果做得不好,就会比较麻烦。

从1.0开始,go中定义错误为 error 接口

// The error built-in interface type is the conventional interface for// representing an error condition, with the nil value representing no error.type error interface {    Error() string}

go语言中,错误处理的几种方式:

1、通过判断值相等。像 io.EOF,go语言中,称为 sentinel error

2、通过断言( type assertion or type switch),判断err的类型或者是否实现了某个接口

3、利用包提供的方法。像 os.IsNotExist。go语言中,称为 ad-hoc check

4、当上面3中方式不可用时,通过搜索 err.Error() 是否包含特定字符串。(不被推荐)

尽量不要使用 sentinel error

尽量不要使用 ad-hoc check

更多相关文章

  1. golang gin框架错误处理
  2. golang中创建错误的方法
  3. golang sqlx捕捉错误
  4. golang如何捕获错误
  5. go语言中包导入的一些问题
  6. golang是什么语言
  7. golang panic可以捕获标准错误吗
  8. golang和c语言的区别是什么?
  9. golang返回错误时如何正确处理

随机推荐

  1. android 动画
  2. android studio生成apk直接改名字
  3. Android(安卓)NDK 环境配置
  4. android 避免Android开发中的ANR
  5. android 动态壁纸 2
  6. Android Fragment和ViewPage 实现简易可
  7. Android强制让某个控件获得焦点
  8. Android(安卓)Vold实现总览
  9. android AlertDialog 弹窗自定义布局 点
  10. android8.0 崩溃 Only fullscreen opaque