extends
多くの言語が持っている振る舞いを表現したいと思います。継承とインターフェイス
type Base struct {
// Some fields
}
type BaseExtender struct {
Base
// Unique fields
}
type AnotherBaseExtender struct {
Base
// Unique fields
}
は今、私は唯一それが「類似フィールド」だ必要があるので、任意のBase
を取る関数を書きたい:私の移動コードで
は、私はそうのように見えるいくつかの構造体を持っています。
func UseTheBase(b Base) {
testVal := b.thingICareAbout
}
ただし、これは機能しません。私はいくつかのinterface
に掘り行われ、私のような何かできると思っていました:Goが自動的メソッドの実装して、インターフェイスを推測することが表示されます除き
type Base interface {
// Some fields
}
を。この動作を模倣する方法はありますか?私はBase
を私の関数に渡すことができ、Base
構造体のすべてのnopメソッドを実装する必要はありません。
ありがとうございます!