接口的组成[Golang]

时间:2015-05-11 00:21:17

标签: oop interface go

有没有办法让界面也包含Go中另一个界面定义的方法?

例如:

type BasicDatabase interface {
    CreateTable(string) error
    DeleteTable(string) error
}

type SpecificDatabase interface {
    CreateUserRecord(User) error
}

我想要一种方法来指定SpecificDatabase接口包含BasicDatabase接口。类似于Go让你做结构组合的方式。

这样我的方法可以采用一种实现SpecificDatabase但仍然在其上调用CreateTable()的类型。

1 个答案:

答案 0 :(得分:18)

这可以与组成结构时相同的方式完成。

type BasicDatabase interface {
    CreateTable(string) error
    DeleteTable(string) error
}

type SpecificDatabase interface {
    BasicDatabase
    CreateUserRecord(User) error
}