Bagaimana untuk menggunakan muka dalam bahasa Go?

王林
Lepaskan: 2024-04-03 14:12:02
asal
341 orang telah melayarinya

Menggunakan antara muka dalam Go melibatkan: menentukan antara muka, termasuk tandatangan kaedah. Laksanakan antara muka dan sediakan pelaksanaan untuk kaedah. Tukar jenis kepada jenis antara muka dan panggil kaedahnya. Antara muka menggalakkan penggunaan semula kod, kemudahan ujian dan kebolehlanjutan.

Bagaimana untuk menggunakan muka dalam bahasa Go?

Bagaimana untuk menggunakan antara muka dalam Go?

Antara muka ialah cara mentakrifkan kontrak dalam bahasa Go, yang menyediakan satu set tandatangan kaedah. Mana-mana jenis yang melaksanakan antara muka ini mesti menyediakan pelaksanaan kaedah ini.

Syntax

Sintaks antara muka adalah seperti berikut:

type 接口名 interface {
    方法1() 返回类型
    方法2(参数) 返回类型
    ...
}
Salin selepas log masuk

Kes praktikal: Antara muka pembanding

Andaikan kita mempunyai kaedah Comparable 接口,定义了一个 Compare untuk membandingkan dua jenis. Kami boleh melaksanakan antara muka ini untuk menyediakan fungsi perbandingan untuk jenis kami sendiri.

type Comparable interface {
    Compare(other Comparable) int
}

type Person struct {
    Name  string
    Age   int
    Hobby string
}

func (p Person) Compare(other Comparable) int {
    switch other.(type) {
    case Person:
        o := other.(Person)
        if p.Age > o.Age {
            return 1
        } else if p.Age < o.Age {
            return -1
        }
        return 0
    default:
        return -1
    }
}
Salin selepas log masuk

Menggunakan kaedah

Selepas melaksanakan antara muka, kita boleh menukar contohnya kepada jenis antara muka dan memanggil kaedahnya.

var comparable Comparable = Person{"John", 30, "Coding"}
result := comparable.Compare(Person{"Jane", 25, "Reading"})
fmt.Println(result) // 预期输出:1
Salin selepas log masuk

Kelebihan

  • Guna Semula Kod: Antara muka membolehkan kami mencipta kod generik yang boleh digunakan dengan mana-mana jenis yang melaksanakan kontrak tertentu.
  • Mudah untuk diuji: Kami boleh menguji kod pada peringkat antara muka tanpa perlu risau tentang pelaksanaan asas.
  • Kebolehlanjutan: Kami boleh menambah kaedah baharu dengan mudah pada antara muka mengikut keperluan dan memanfaatkan semua jenis yang dilaksanakan.

Nota

  • Pastikan anda menyediakan semua kaedah yang diperlukan semasa melaksanakan antara muka.
  • Antaramuka menguatkuasakan pemeriksaan jenis, tetapi kaedah tidak dilaksanakan.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan muka dalam bahasa Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!