跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 非引战,一直想不明白 golang 的错误处理和其他语言的 try{}catch{}有什么区别。。。
未分類
28 2 月 2021

非引战,一直想不明白 golang 的错误处理和其他语言的 try{}catch{}有什么区别。。。

非引战,一直想不明白 golang 的错误处理和其他语言的 try{}catch{}有什么区别。。。

資深大佬 : zxCoder 5

经常看到针对这个问题的争论很多,有人特别喜欢这个处理方式,有人特别不喜欢

但是!!!我一直不能理解两者深层的不同之处。。。。是需要写比较复杂的程序才能体现出来吗?

golang 不就是把错误 /异常返回到上层函数调用处吗

try catch 不也是在上层函数调用处去捕获这个异常 /错误吗

两者到底有什么大区别,一直想不明白,有大佬可以简明扼要地解释一波吗

大佬有話說 (9)

  • 資深大佬 : emSaVya

    两种错误处理机制 建议搜索了解 EAFP/LBYL

  • 資深大佬 : imkerberos

    如果你调用 10 层,你觉得判断 10 层省事还是 try 一次省事?

  • 資深大佬 : wangsongyan

    我觉得 try/catch 类比 panic/recover 更好些

  • 資深大佬 : ysc3839

    try catch 有 stack unwinding 的功能。return error 没有,只能返回上一层,不能一直回溯。

  • 資深大佬 : liuxey

    非引战,一直想不明白 golang 的错误处理和其他语言的 try{}catch{}有什么区别。。。就是因为 try/catch 太方便了,Java 中无论你的 call stack 多深,一把 catch 完事
    这两种没有绝对的好坏,如果是非分明就不会有争论

  • 資深大佬 : sorcerer

    @liuxey 请问这是什么软件

  • 資深大佬 : cmdOptionKana

    没啥深层区别,只是风格不同,各有优劣。

  • 資深大佬 : liuxey

    @sorcerer #6 这是多年前网上嘲讽 Java 的老图了,看着像拼出来的,所以我也不知道

  • 資深大佬 : sorcerer

    @liuxey 哈哈 好吧

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具