跳至主要內容
两分钟让你明白Go中如何继承

两分钟让你明白Go中如何继承

最近在重构代码的时候,抽象了大量的接口。也使用这些抽象的接口做了很多伪继承的操作,极大的减少了代码冗余,同时也增加了代码的可读性。

然后随便搜了一下关于Go继承的文章,发现有的文章的代码量过多,并且代码format极其粗糙,命名极其随意,类似于A、B这种,让人看着看着就忘了到底是谁继承谁,我又要回去看一遍逻辑。

虽然只是样例代码,我认为仍然需要做到简洁、清晰以及明了。这也是我为什么要写这篇博客的原因。接下里在这里简单分享一下在Go中如何实现继承。

1. 简单的组合

说到继承我们都知道,在Go中没有extends关键字,也就意味着Go并没有原生级别的继承支持。这也是为什么我在文章开头用了伪继承这个词。本质上,Go使用interface实现的功能叫组合,Go是使用组合来实现的继承,说的更精确一点,是使用组合来代替的继承,举个很简单的例子。


LeonSH...大约 6 分钟Golang继承