一。定义:函数
1. type:定义一个新的数据类型指针
2.interface:这是一个接口blog
与结构体的区别:这里只有方法,没有属性。继承
二。用途:接口
1. Go 语言提供了一种接口功能,它把全部的具备共性的方法定义在一块儿,任何其余类型只要实现了这种方法,不必定要显式要去实现哪些接口啦。好比上面的手机的 call()方法,就彻底能够定义在接口 Phone 里面,而 NokiaPhone 和 IPhone 只要实现了这个接口就是一个 Phone变量
2.更高一层的抽象,不一样于结构体的内嵌或继承数据类型
3.方法都是空的,方法的实如今子类里方法
三。其余;im
1. 与其余数据类型不同,不能实例化,不能经过new或make函数建立call
2.结构体的花括号内是字段声明,接口花括号是方法声明,方法集
3.一个结构体的值方法没有实现一个接口,不表明指针方法没有实现这个接口
4.接口的动态值(实际值),动态类型,静态类型
四。接口的用法:
1. 找到实现其全部方法集的数据类型
2.对这个数据类型实例化
3.声明一个接口变量
4.把这个实例化的变量赋值给接口变量
5.给接口变量赋值是什么概念?是建立接口么?
五。一条重要的规则:
若是咱们使用一个变量给另一个变量赋值,那么真正赋给后者的值,并非前者持有的那个值,而是该值的一个副本。
六。接口的组合(继承):