Go语言的面向对象编程
2022/1/29 20:08:54
本文主要是介绍Go语言的面向对象编程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Go语言实现面向对象封装,代码如下:
package main import ( "fmt" ) type Person struct { Name string Gender string Age int } func (p *Person) say(sentence string) { fmt.Print(p.Name, " says ", sentence, "\n") } func (p *Person) getAge() int { return p.Age } func main() { person1 := &Person{Name: "Tom", Gender: "male", Age: 25} person1.say("Hello!") person1.Name = "Jerry" person1.say("Hello!") }
运行结果如下:
Tom says Hello! Jerry says Hello!
改变成员变量的值,代码如下:
package main import ( "fmt" ) type AA struct { B int C int } func (p *AA) Change() { p.B = 1 p.C = 2 } func main() { var a AA a.B = 10 a.C = 20 fmt.Printf("%v\n", a) a.Change() fmt.Printf("%v\n", a) }
运行结果如下:
{10 20} {1 2}
这篇关于Go语言的面向对象编程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-05MongoDB入门:快速掌握NoSQL数据库基础
- 2024-08-28go 项目中怎么打印调试-icode9专业技术文章分享
- 2024-08-21swoole未来的发展前景与golang对比哪个更好-icode9专业技术文章分享
- 2024-08-16goland 已经下了中文插件了, 怎么设置成中文-icode9专业技术文章分享
- 2024-07-26使用 SendGrid 的 Go 客户端库能同时给多个邮箱发吗-icode9专业技术文章分享
- 2024-07-26使用 SendGrid 的 Go 客户端库时怎么设置header 和 标签tag 呢-icode9专业技术文章分享
- 2024-07-26SendGrid 对邮件的类别(Categories)和标签的数量有限制吗?-icode9专业技术文章分享
- 2024-07-17课程推荐《高性能GO企业级APM监控系统实战》
- 2024-06-26解决google chrome helper 内存占用较高!
- 2024-04-01got an unexpected keyword argument