Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Konsep dan penggunaan kaedah penerima dalam golang

Konsep dan penggunaan kaedah penerima dalam golang

PHPz
PHPzasal
2023-04-11 10:39:13872semak imbas

Bahasa Go ialah bahasa pengaturcaraan sumber terbuka yang direka untuk menjadi kaedah pengaturcaraan yang sangat cekap. Berbanding dengan bahasa pengaturcaraan lain, bahasa Go mempunyai banyak ciri unik, salah satunya adalah penerima kaedah (Method Receiver). Artikel ini terutamanya akan memperkenalkan konsep dan penggunaan penerima kaedah dalam bahasa Go.

  1. Apakah itu penerima kaedah?

Dalam bahasa Go, penerima kaedah ialah fungsi khas yang digunakan untuk mengikat jenis tertentu dan membenarkan kaedah dipanggil pada nilai jenis tersebut. Penerima kaedah juga dipanggil fungsi penerima atau hanya penerima. Takrif jenis sekeliling penerima, yang membolehkan pembangun mentakrifkan kaedah pada jenis. Penerima kaedah menentukan parameter kaedah, serta jenis parameter.

  1. Sintaks penerima kaedah

Penerima kaedah ialah parameter (atau set parameter) yang dinyatakan sebelum nama fungsi. Diberikan di bawah adalah format lengkap kaedah dengan penerima jenis T:

func (t T) methodName(parameter_list)(return_type_list){
    //Code Block
}

di mana penerima dinyatakan sebelum nama fungsi dan mempunyai satu parameter jenis T. Nilai jenis penunjuk T boleh digunakan sebagai penerima. Jika methodName ialah kaedah yang menunjuk kepada penunjuk jenis T, anda boleh menggunakan nilai jenis T atau *T sebagai penerimanya.

Mengenai penerima, beberapa konsep yang perlu anda ketahui adalah seperti berikut.

  • T: Jenis, iaitu, jenis parameter penerima kaedah.
  • methodName: nama kaedah.
  • parameter_list: senarai parameter, sama seperti senarai parameter fungsi.
  • return_type_list: Senarai nilai pulangan, sama seperti senarai nilai pulangan fungsi.

Sebagai contoh, dalam bahasa Go, anda boleh mentakrifkan jenis Person seperti ini, dan kemudian mentakrifkan penerima sebagai kaedah Person jenis GetAge():

// Person with name and age as attributes.
type Person struct {
    name string
    age  int
}

// Method to get person's age
func (p Person) GetAge() int {
    return p.age
}

func main() {
    // Create a person object
    person := Person{"Alice", 25}

    // Calling GetAge() Method.
    fmt.Println("Age of the person is:", person.GetAge()) // Output: Age of the person is: 25
}

Dalam contoh di atas, kami menentukan jenis Person dan menghantarnya sebagai penerima kepada kaedah GetAge(). Gunakan kaedah GetAge() untuk mendapatkan umur objek jenis Person.

  1. Menggunakan jenis penunjuk sebagai penerima

Anda boleh menggunakan nilai jenis penunjuk T sebagai penerima. Jika methodName ialah kaedah yang menunjuk kepada penunjuk jenis T (iaitu, T), anda boleh menggunakan nilai jenis T atau T sebagai penerimanya. Contohnya, dalam bahasa Go, anda boleh mentakrifkan jenis Person seperti ini dan mentakrifkan kaedah Person yang penerimanya ialah penunjuk jenis SetName():

// Person with name and age as attributes.
type Person struct {
    name string
    age  int
}

// Method to set person's name
func (p *Person) SetName(name string) {
    p.name = name
}

func main() {
    // Create person object
    person := &Person{"Alice", 25}

    // Calling SetName() method
    person.SetName("Bob")

    // Retrieved person's name
    fmt.Println("The person's name is:", person.name) // Output: The person's name is: Bob
}

Dalam contoh di atas, kami Jenis Person ditakrifkan dan dihantar ke kaedah *Person sebagai penerima jenis penunjuk SetName(). Gunakan kaedah SetName() untuk menetapkan nama objek jenis Person.

  1. Ringkasan

Dalam bahasa Go, penerima kaedah ialah fungsi khas yang digunakan untuk mengikat kepada jenis tertentu dan membenarkan nilai memanggil kaedah. Apabila mentakrifkan kaedah penerima, anda perlu menentukan jenis penerima sebelum nama fungsi. Sintaksnya adalah seperti berikut:

func (t T) methodName(parameter_list)(return_type_list){
    //Code Block
}

di mana, T ialah jenis penerima, yang boleh menjadi sebarang jenis. Penerima kaedah termasuk definisi jenis, nama kaedah, parameter dan jenis pulangan. Apabila menggunakan jenis penunjuk T sebagai penerima, anda boleh menggunakan nilai jenis T atau *T sebagai penerimanya. Menentukan dan menggunakan penerima kaedah dalam bahasa Go boleh meningkatkan kebolehbacaan dan kebolehgunaan semula program.

Atas ialah kandungan terperinci Konsep dan penggunaan kaedah penerima dalam golang. 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