Golang入门到项目实战 | golang模拟OOP的属性和方法
Posted 一个热爱编程的通信人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang入门到项目实战 | golang模拟OOP的属性和方法相关的知识,希望对你有一定的参考价值。
golang没有面向对象的概念,也没有封装和概念,但是可以通过结构体struct和函数绑定来实现OOP的属性和方法等特性。接收者receiver方法。
例如,想要定义一个Person类,有name和age属性,有eat/sleep/work方法。
package main
import "fmt"
type Person struct
name string
age int
func (per Person) eat()
fmt.Println("eat...")
func (per Person) sleep()
fmt.Println("sleep...")
func (per Person) work()
fmt.Println("work...")
func main()
per := Person
name: "tom",
age: 20,
fmt.Printf("per: %v\\n", per)
per.eat()
per.sleep()
per.work()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
per: tom 20
eat...
sleep...
work...
以上是关于Golang入门到项目实战 | golang模拟OOP的属性和方法的主要内容,如果未能解决你的问题,请参考以下文章