Latest web development tutorials

Pergi Language Interface

Bahasa Go memberikan tipe data lain yang adalah antarmuka, yang bersama-sama dengan definisi semua metode memiliki kesamaan, dan jenis lainnya mengimplementasikan metode ini adalah untuk mengimplementasikan interface ini.

contoh

/* 定义接口 */
type interface_name interface {
   method_name1 [return_type]
   method_name2 [return_type]
   method_name3 [return_type]
   ...
   method_namen [return_type]
}

/* 定义结构体 */
type struct_name struct {
   /* variables */
}

/* 实现接口方法 */
func (struct_name_variable struct_name) method_name1() [return_type] {
   /* 方法实现 */
}
...
func (struct_name_variable struct_name) method_namen() [return_type] {
   /* 方法实现*/
}

contoh

package main

import (
    "fmt"
)

type Phone interface {
    call()
}

type NokiaPhone struct {
}

func (nokiaPhone NokiaPhone) call() {
    fmt.Println("I am Nokia, I can call you!")
}

type IPhone struct {
}

func (iPhone IPhone) call() {
    fmt.Println("I am iPhone, I can call you!")
}

func main() {
    var phone Phone

    phone = new(NokiaPhone)
    phone.call()

    phone = new(IPhone)
    phone.call()

}

Dalam contoh di atas, kita mendefinisikan sebuah Telepon antarmuka, antarmuka yang memiliki metode panggilan (). Kemudian kita mendefinisikan variabel dalam jenis fungsi Telepon utama di dalam, dan kepada siapa ditugaskan untuk NokiaPhone dan IPhone. Kemudian memanggil panggilan () metode, hasil output adalah sebagai berikut:

I am Nokia, I can call you!
I am iPhone, I can call you!