3.1 类
Go语言没有继承、虚函数、构造函数和析构函数、隐藏的this指针等。在Go语言中,你可以给任意类型(包括内置类型,但不包括指针类型)添加相应的方法。go没有class关键字,而是对各种变量包括自定义变量可以设置相应的方法,比如定义一个学生类,以及设置学生姓名等方法:
java:
public class Student {
private
int age;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
go:
type Student struct {
userName string
age int
}
func (stu Student) GetAge() int {
return stu.age
}
func (stu Student) SetAge(age int) {
stu.age = age
}
func main() {
var a Student = Student{"张三", 18}
b := Student{}
b.age = 19
fmt.Println("a的年龄:", a.GetAge())
fmt.Println("b的年龄:", b.age)
}
3.2 初始化
3.3 匿名组合
3.4 可见性
3.5 接口
3.5.1 其他语言的接口
3.5.2 非侵入式接口
3.5.3 接口赋值
3.5.4 接口查询
3.5.5 类型查询
3.5.6 接口组合
3.5.7 Any类型
这篇文章还没有评论