使用error需要导入相关的errors包
package main
import (
"errors"
"fmt"
)
type User struct {
name string
age int
}
type UserService interface {
getUserById(id int) (User, error)
}
type UserServiceImpl struct {
}
func (a UserServiceImpl) getUserById(id int) (User, error) {
fmt.Println("getUserById")
return User{"name", 123}, errors.New("Go is an advanced language")
}
func main() {
var userService UserService
userService = new(UserServiceImpl)
u, err := userService.getUserById(1)
if err != nil {
fmt.Println(err)
}
fmt.Println(u)
}