go语言day11 错误 defer(),panic(),recover()

        错误:

                创建错误

                        1)fmt包下提供的方法

                                        fmt.Errorf(" 格式化字符串信息 "  , 空接口类型对象 )

                        2)errors包下提供的方法

                                        errors.New(" 字符串信息 ")



         创建自定义错误

                需要实现error接口,而error接口只包含一个方法Error(),实现该方法就实现error接口。

            这里 用*areaError来接收方法Error(),表明指针areaError类型实现error接口。

            circleArea()方法返回错误类型对象为  &areaError{ }    

             rectArea()方法返回错误类型对象为   &areaError{ }    

              在main()方法中使用断言  

                     _,  err :=   rectArea() 

                     if areaErrorPointerObj,judgeValue=  err.(*areaError)  ;  judgeValue{ }

 

         defer(),panic(),recover()

        panic()会中断程序执行,从运行到panic此处时,后面所有的代码都不在执行。

        ​​​​​​​除了延迟函数defer(),defer()调用在panic()之前时,会在程序中断时仍然最后执行。这是程序在panic()后唯一能继续运行的救命稻草,那就是在defer()中使用recover()恢复程序运行。并且recover( )返回值会携带panic(参数)函数中的参数信息        

相关推荐

  1. 100个Go语言典型错误

    2024-07-10 20:40:06       29 阅读
  2. Go语言常见错误 | 创建工具包

    2024-07-10 20:40:06       30 阅读
  3. Go语言中常见HTTP处理错误

    2024-07-10 20:40:06       26 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 20:40:06       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 20:40:06       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 20:40:06       45 阅读
  4. Python语言-面向对象

    2024-07-10 20:40:06       55 阅读

热门阅读

  1. 数据中台真的适合你的企业吗?

    2024-07-10 20:40:06       24 阅读
  2. [AIGC] ClickHouse的表引擎介绍

    2024-07-10 20:40:06       21 阅读
  3. go 函数

    2024-07-10 20:40:06       23 阅读
  4. 玩转springboot之springboot项目监测

    2024-07-10 20:40:06       24 阅读
  5. 【LeetCode】每日一题:跳跃游戏 II

    2024-07-10 20:40:06       19 阅读
  6. Python面试题: 如何在 Python 中实现一个线程池?

    2024-07-10 20:40:06       24 阅读
  7. js时间转成xx前

    2024-07-10 20:40:06       18 阅读
  8. stm32基本定时器

    2024-07-10 20:40:06       17 阅读
  9. Kithara常见问题解答

    2024-07-10 20:40:06       17 阅读
  10. 数学,LeetCode 3102. 最小化曼哈顿距离

    2024-07-10 20:40:06       22 阅读
  11. Linux C++ 044-设计模式简介

    2024-07-10 20:40:06       22 阅读
  12. ffmpeg frequently use commands

    2024-07-10 20:40:06       26 阅读