多态性
接口使函数能够有一个“占位符”参数,该参数可以采用不同的结构作为参数。例如,如果结构 Man、Woman、Child 实现接口 Human,则带有参数 Human 的方法可以采用结构 Man、Woman、Child 中的任何一个作为参数。因此,接口参数可以“变形”为作为参数传递的任何结构,只要它实现了接口中定义的所有函数。
这很重要,因为接口是 Go 中实现多态的唯一方法,因为它没有继承。因此,如果 Man '扩展' Human(通过将其作为匿名字段),则任何使用 Human 作为参数的方法都无法将 Man 作为参数。
我的困惑源于这样一个事实,即继承也是在 Java 中实现多态的一种方式,我认为这里也是如此。我站纠正!