Go语言工厂模式

main.go

package main
import (
	"fmt"
	"go_demo/model"
)
func main() {

	//var stu = model.Student{
	//	Name: "golang",
	//	Score: 11,
	//}
	// 因为stu结构体首字母是小写,因此只能在model中使用
	// 我们通过工厂模式来解决
	var stu = model.NewStudent("GOLANG", 99.9)
	fmt.Println(*stu)
}

model/student.go

package model

type student struct {
	Name string
	Score float64
}

func NewStudent (n string, s float64) *student {
	return &student{
		Name: n,
		Score: s,
	}
}

猜你喜欢

转载自blog.csdn.net/qq2942713658/article/details/113098551