Go 语言理解
西山雨 · · 2584 次点击 · · 开始浏览面向对象,是软件工程中的重要思想。我们入手一门新的编程语言,需要先了解它的基本语法,然后就是如何面向对象编程。
Go 基础知识
Go 是一门强类型语言,具有并发、安全等优势。
函数
函数是按值传递,这一点很重要
以下是一个函数的简单定义。
func speak(name string) string {
return name;
}
结构体
下面是一个结构体的示例
type Man struct {
// 内部可见
age uint8
// 公开可见
Name string
}
Go 里面的结构体,可以看成是其他编程域名中的类,但是它只有属性,没有方法。
接口
同 java 的接口一样,都是抽象方法的集合
type HumanBehavior interface {
Speak() string
}
方法
func (this *Man) Speak() string {
return this.name
}
(this *Man)是要绑定的结构体,这里传入指针类型,可以修改变量自身内容。
receiver 是 pointer or value。
正常都是需要设置receiver为指针类型,这样才符合我们面向对象编程的习惯和用法。
面向对象
介绍完上面的内容,下面我们说明下Go语言中的面向对象是怎样的
封装
大写开头的属性和方法可以被包外部访问,小写则不能被访问
继承
继承结构体中的属性和方法
重写/重载
可以重写,但不能重载
多态
不同的实例,执行同一个方法,会有不同的表现。
实现多态的条件是:
- 继承
- 重写
参考文档
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
面向对象,是软件工程中的重要思想。我们入手一门新的编程语言,需要先了解它的基本语法,然后就是如何面向对象编程。
Go 基础知识
Go 是一门强类型语言,具有并发、安全等优势。
函数
函数是按值传递,这一点很重要
以下是一个函数的简单定义。
func speak(name string) string {
return name;
}
结构体
下面是一个结构体的示例
type Man struct {
// 内部可见
age uint8
// 公开可见
Name string
}
Go 里面的结构体,可以看成是其他编程域名中的类,但是它只有属性,没有方法。
接口
同 java 的接口一样,都是抽象方法的集合
type HumanBehavior interface {
Speak() string
}
方法
func (this *Man) Speak() string {
return this.name
}
(this *Man)是要绑定的结构体,这里传入指针类型,可以修改变量自身内容。
receiver 是 pointer or value。
正常都是需要设置receiver为指针类型,这样才符合我们面向对象编程的习惯和用法。
面向对象
介绍完上面的内容,下面我们说明下Go语言中的面向对象是怎样的
封装
大写开头的属性和方法可以被包外部访问,小写则不能被访问
继承
继承结构体中的属性和方法
重写/重载
可以重写,但不能重载
多态
不同的实例,执行同一个方法,会有不同的表现。
实现多态的条件是:
- 继承
- 重写