网站集约化建设行业规定,都芳漆中文网站建设,南昌做网站的公司多不多,深圳市福田建设局网站目录 概述类的表示代码结果 类的封装代码结果 结束 概述 Golang中类的表示与封装 类的表示
代码 注释掉的代码#xff0c;并不能拿来当赋值或获取值来使用。 package mainimport fmt// 类大写则代表#xff0c;可以被其它包使用
type Hero struct {// 属性方法大… 目录 概述类的表示代码结果 类的封装代码结果 结束 概述 Golang中类的表示与封装 类的表示
代码 注释掉的代码并不能拿来当赋值或获取值来使用。 package mainimport fmt// 类大写则代表可以被其它包使用
type Hero struct {// 属性方法大写则代表公有小写则是私有Name stringAge intLevel int
}// func (this Hero) show() {
// fmt.Printf(name %s \n, this.getName())
// }// func (this Hero) getName() string {
// return this.Name
// }// func (this Hero) setName(name string) {
// // this 是调用该方法的对象的一个副本(拷贝)
// this.Name name
// }func (this *Hero) show() {fmt.Printf(name %s \n, this.getName())
}func (this *Hero) getName() string {return this.Name
}func (this *Hero) setName(name string) {// this 是调用该方法的对象的一个副本(拷贝)this.Name name
}func main() {// 创建一个对象hero : Hero{Name: 张三, Age: 32, Level: 1}hero.show()hero.setName(李四)hero.show()
}结果 类的封装
代码
package mainimport fmttype Human struct {Name stringAge int
}func (this *Human) GetName() string {return this.Name
}func (this *Human) eat() {fmt.Println(human eat..)
}func (this *Human) work() {fmt.Println(human work..)
}type SuperHuman struct {HumanLevel int
}func (this *SuperHuman) work() {fmt.Println(super human work..)
}func main() {ss : SuperHuman{Human{张三, 1}, 1}fmt.Printf(ss %v \n, ss)s : Human{李四, 1}fmt.Println(s)sss : SuperHuman{s, 1}fmt.Printf(sss %v \n, sss)
}结果 结束
Golang中类的表示与封装 至此结束如有疑问欢迎评论区留言。