golang 自定义error

package main

import (
"fmt"
)


##通过struct来构建自定义异常,只要实现 Error方法就实现了系统error接口, type Err
struct { line string code string err string } func (e *Err)Error() string { return fmt.Sprintf("error line %s error %s error code %s",e.line,e.err,e.code) } func New(L,C,E string) *Err { return &Err{ code: C,err: E,line: L, } }

 

调用

package main

import "fmt"

func main() {
fmt.Println("test")
err := TestErr()
if err !=nil{
fmt.Println(err)
self,_ :=err.(*Err)
fmt.Println(self.err)
fmt.Println(self.line)
fmt.Println(self.code)
}
}

func TestErr() error {
s := New("100","test","404")
return s
}

 

 

posted @ 2020-05-26 09:30  Django_gege  阅读(343)  评论(1编辑  收藏  举报