在面向对象编程中,接口是一个重要概念,它是一种契约,它定义了对象应该具备的方法。一个接口可以有多重实现,它的所有实现都必须满足接口所有约定的方法。并不是所有编程语言都有接口,例如在C、Python、Ruby中是没有内置的接口机制,但在大多数编程语言中都有接口的概念,一般用interface来标记。
Java和Go都是有内置的接口的机制,但在接口实现上却不尽相同。这些区别主要是接口定义、接口实现、约束机制和应用场景等方面,下面就这些不同进行逐一比较。
两者在接口定义上区别不大,都是通过interface实现的。