2015-05-11 20 views
6

Có cách nào để tạo giao diện cũng bao gồm các phương thức được xác định bởi giao diện khác trong Go không?Thành phần của giao diện [Golang]

Ví dụ:

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

type SpecificDatabase interface { 
    CreateUserRecord(User) error 
} 

Tôi muốn một cách để xác định rằng giao diện SpecificDatabase chứa các giao diện BasicDatabase. Tương tự như cách Go cho phép bạn làm thành phần của cấu trúc.

Bằng cách này, các phương pháp của tôi có thể có loại thực hiện SpecificDatabase nhưng vẫn gọi số CreateTable() trên đó.

+0

Giống như ['io.ReadWriteCloser'] (https://golang.org/pkg/io/#ReadWriteCloser)? –

Trả lời

14

Điều này có thể được thực hiện theo cách tương tự như khi soạn các cấu trúc.

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

type SpecificDatabase interface { 
    BasicDatabase 
    CreateUserRecord(User) error 
} 
Các vấn đề liên quan