Go语言入门心法(八): mysql驱动安装报错onnection failed
Go语言入门心法(十):Go语言操作MYSQL(CRUD)|事务处理
go语言多值返回异常处理认知:
在编程中,我们为了程序的健壮性,需要考虑程序处理过程中可能出现的异常及错误;而go语言中,为了避免开发者乱用
try---catch...finally(Java)|try...exception...finally(Python)这种传统的异常处理机制,而导致
代码结构变得混乱;go语言会使用多值返回来返回异常;这种检查错误的方式给编码者提供了很大的控制权;
- package main
-
- import (
- "fmt"
- "io/ioutil"
- )
-
- /*
- go语言多值返回异常处理认知:
-
- 在编程中,我们为了程序的健壮性,需要考虑程序处理过程中可能出现的异常及错误;而go语言中,为了避免开发者乱用
- try---catch...finally(Java)|try...exception...finally(Python)这种传统的异常处理机制,而导致
- 代码结构变得混乱;go语言会使用多值返回来返回异常;这种检查错误的方式给编码者提供了很大的控制权;
- */
- func main() {
- var filePath = "./test.txt"
- f, err := ioutil.ReadFile(filePath)
- if err != nil {
- fmt.Println("程序异常: ", err)
- } else {
- fmt.Println(f)
- }
- }
运行效果:
程序异常: open ./test.txt: The system cannot find the file specified.
Process finished with the exit code 0
go语言中自定义异常:
(1)错误类型接口认知
go语言中error类型实际上是一个接口,源代码:
type error interface {
Error() string
}
该接口中包含一个返回字符串的方法,换言之,所有符合Error() String格式的方法,都实现了错误接口
(2)创建错误认知
go语言中标准库中errors包可以用来创建自定义的错误,自定义错误的内容
格式如下:
err := errors.New("this is an errors")
- package main
-
- import (
- "errors"
- "fmt"
- )
-
- /*
- go语言中自定义异常:
- (1)错误类型接口认知
- go语言中error类型实际上是一个接口,源代码:
- type error interface {
- Error() string
- }
- 该接口中包含一个返回字符串的方法,换言之,所有符合Error() String格式的方法,都实现了错误接口
- (2)创建错误认知
- go语言中标准库中errors包可以用来创建自定义的错误,自定义错误的内容
- 格式如下:
- err := errors.New("this is an errors")
- */
- func main() {
- err := errors.New("this is an error")
- var err2 error
- fmt.Println(err.Error())
- fmt.Println(err2)
- }
运行效果:
GOROOT=D:\program_file_worker\go1.20 #gosetup GOPATH=D:\program_file_worker\go1.20\bin;C:\Users\Administrator\go #gosetup D:\program_file_worker\go1.20\bin\go.exe build -o C:\Users\Administrator\AppData\Local\Temp\GoLand\___go_build_OOPErrorMultivaluedReturnCustomerException_go.exe D:\program_file\go_workspace\org.jd.data\exception\OOPErrorMultivaluedReturnCustomerException.go #gosetup C:\Users\Administrator\AppData\Local\Temp\GoLand\___go_build_OOPErrorMultivaluedReturnCustomerException_go.exe this is an errorProcess finished with the exit code 0
后期补充完整,忙着去耍帅,泡妹子去.............