首页 > 其他 > 详细

golang快速入门-14-golang的类

时间:2021-03-18 09:59:15      阅读:34      评论:0      收藏:0      [点我收藏+]

现在版本的golang中没有class关键字。golang沿用了标准c对类的模拟,或者c++编译器中对OOP的实现:基于结构体struct实现了类的机制。

 

package main
import "fmt"


//如果类名首字母大写,表示其他包也能够访问
type Hero struct 
{
    //如果说类的属性首字母大写, 表示该属性是对外能够访问的,否则的话只能够类的内部访问
    Name  string
    Ad    int
    level int
}

// hero.Show()方法 func (
this *Hero) Show() { fmt.Println("Name = ", this.Name) fmt.Println("Ad = ", this.Ad) fmt.Println("Level = ", this.level) }
// hero.GetName()方法 func (
this *Hero) GetName() string { return this.Name } // 此处必须带*号,否则就是传拷贝,不仅不能修改,而且造成性能问题 func (this *Hero) SetName(newName string) { //this 是调用该方法的对象的一个副本(拷贝) this.Name = newName } func main() { //创建一个对象 hero := Hero{Name: "zhang3", Ad: 100} hero.Show() hero.SetName("li4") hero.Show() }

 

golang快速入门-14-golang的类

原文:https://www.cnblogs.com/evoc/p/14553047.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!