Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mari kita bercakap tentang cara menggunakan golang untuk melaksanakan kaedah

Mari kita bercakap tentang cara menggunakan golang untuk melaksanakan kaedah

PHPz
PHPzasal
2023-04-14 09:17:05506semak imbas

golang (bahasa Go) ialah bahasa pengaturcaraan, dan kaedah ialah konsep pengaturcaraan dalam golang, anda boleh menambah kaedah pada jenis dengan menentukan kaedah. Artikel ini akan memperkenalkan kaedah dalam golang dan cara menggunakan golang untuk melaksanakan kaedah.

1. Konsep kaedah

Dalam golang, kaedah ialah fungsi yang beroperasi pada jenis. Dalam pengaturcaraan sebenar, kita boleh menambah kaedah kepada jenis untuk mencapai fungsi tertentu dengan menentukan kaedah.

Perbezaan antara kaedah dan fungsi ialah kaedah ialah fungsi yang ditakrifkan pada jenis, manakala fungsi adalah bebas. Dalam erti kata lain, kaedah bertindak pada jenis tertentu dan boleh mengakses sifat jenis itu, sedangkan fungsi tidak mempunyai sekatan sedemikian. Format sintaks kaedah

adalah seperti berikut:

func (t Type) methodname(parameter list) (return type){
    //方法体
}

Antaranya, Jenis mewakili jenis, nama kaedah ialah nama kaedah jenis, senarai parameter dan jenis pulangan adalah parameter. dan pulangan nilai kaedah masing-masing.

2. Penggunaan kaedah

Kita boleh menambah kaedah untuk menaip melalui langkah berikut:

1 Tentukan jenis: Dalam golang, anda boleh menggunakan kata kunci jenis untuk tentukan jenis tersuai.

Contohnya:

type student struct {
    name string
    age int
}

2. Tentukan kaedah: Anda boleh mentakrifkan kaedah dengan menambah nama kaedah dan badan kaedah sebelum nama jenis.

Contohnya:

func (s student) getAge() int {
    return s.age
}

Dalam kod di atas, kaedah getAge() ditakrifkan pada jenis pelajar. Kaedah ini akan mengembalikan sifat umur objek pelajar.

3. Panggil kaedah

Selepas kaedah ditakrifkan, kita boleh memanggil kaedah dengan membuat instantiat objek jenis ini dan menggunakan objek.

Contohnya:

s := student{name: "Tom", age: 18}
age := s.getAge()
fmt.Println(age)

Dalam kod di atas, kita mula-mula membuat instantiate objek s jenis pelajar dan memberikan nilai kepada nama dan atribut umurnya. Seterusnya, kami memanggil kaedah getAge() objek dan memberikan nilai pulangan kepada umur pembolehubah. Akhir sekali, kami mencetak nilai umur ke konsol.

3. Contoh kaedah pelaksanaan Golang

Contoh berikut menunjukkan cara melaksanakan kaedah dalam golang:

package main

import (
    "fmt"
)

type student struct {
    name string
    age  int
}

func (s student) getAge() int {
    return s.age
}

func (s *student) setAge(age int) {
    s.age = age
}

func main() {
    s := student{name: "Tom", age: 18}
    age := s.getAge()
    fmt.Println(age)

    s.setAge(20)
    newAge := s.getAge()
    fmt.Println(newAge)
}

Dalam contoh ini, kami mentakrifkan jenis pelajar , dan dua kaedah, getAge() dan setAge(), telah ditambahkan pada jenis ini. Antaranya, kaedah getAge() mengembalikan atribut umur jenis ini dan kaedah setAge() digunakan untuk menetapkan atribut umur jenis ini.

Dalam fungsi utama, kita mula-mula membuat instantiat objek s jenis pelajar dan mendapatkan atribut umur objek kemudian, kita menggunakan kaedah setAge() untuk menetapkan atribut umur objek kepada 20, dan Dapatkan atribut umur objek sekali lagi. Akhirnya, kod ini akan mengeluarkan dua nilai, 18 dan 20, pada konsol.

Kesimpulan

Kaedah dalam golang ialah fungsi yang menyasarkan jenis tingkah laku tertentu dan boleh mengakses sifat jenis itu. Kita boleh menambah fungsi tertentu pada jenis dengan menggunakan kaedah untuk melaksanakan logik tertentu. Dalam artikel ini, kami memperkenalkan konsep kaedah dalam golang dan cara melaksanakan kaedah menggunakan golang. Jika anda ingin belajar golang secara mendalam, pastikan anda menguasai kaedah dalam golang.

Atas ialah kandungan terperinci Mari kita bercakap tentang cara menggunakan golang untuk melaksanakan kaedah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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