面向对象,是软件工程中的重要思想。咱们入手一门新的编程语言,须要先了解它的基本语法,而后就是如何面向对象编程。java
Go 是一门强类型语言,具备并发、安全等优点。git
函数是按值传递,这一点很重要github
如下是一个函数的简单定义。golang
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为指针类型,这样才符合咱们面向对象编程的习惯和用法。ui
介绍完上面的内容,下面咱们说明下Go语言中的面向对象是怎样的
大写开头的属性和方法能够被包外部访问,小写则不能被访问
继承结构体中的属性和方法
能够重写,但不能重载
不一样的实例,执行同一个方法,会有不一样的表现。
实现多态的条件是: