Rumah > Artikel > pembangunan bahagian belakang > Pemahaman mendalam tentang kaedah statik dalam golang
Golang ialah bahasa pengaturcaraan yang menyokong pengaturcaraan berorientasikan objek, tetapi kaedah pengaturcaraan berorientasikan objeknya agak berbeza daripada bahasa pengaturcaraan berorientasikan objek tradisional. Satu perbezaan ialah tiada konsep kelas di Golang, dan tiada kaedah statik di Jawa. Tetapi Golang menyediakan mekanisme yang serupa dengan kaedah statik Hari ini kami akan memperkenalkan kaedah statik di Golang.
Tiada kelas di Golang, tetapi ia menyediakan struktur (struct) untuk menyusun data. Struktur ialah jenis data yang boleh merangkum data dan tingkah laku Ia serupa dengan kelas tradisional.
Di Golang, struktur mempunyai kaedah tersendiri. Apabila kaedah dipanggil, penunjuk objek struktur dihantar sebagai parameter lalai, dan medan dan kaedah objek struktur boleh diakses dalam kaedah.
Tetapi bagaimana jika kita ingin menentukan kaedah yang dikaitkan dengan struktur tetapi tidak perlu mengakses sebarang data struktur? Pada masa ini, anda perlu menggunakan kaedah statik di Golang.
Di Golang, kaedah statik dilaksanakan dengan menambahkan penerima pada parameter fungsi. Penerima menentukan jenis data yang dikendalikan oleh fungsi, yang boleh menjadi struktur, penunjuk, tatasusunan, kepingan, dsb.
Berikut ialah contoh yang menunjukkan cara mentakrif dan menggunakan kaedah statik dalam Golang:
package main import "fmt" type Rectangle struct { width, height int } // 定义静态方法,接收者为 Rectangle 类型 func (r Rectangle) area() int { return r.width * r.height } func main() { r := Rectangle{10, 20} fmt.Println(r.area()) // 输出200,调用静态方法 }
Dalam contoh di atas, kami mentakrifkan struct Rectangle
, dan kemudian kami mentakrifkan A statik kaedah area()
dicipta, yang mengambil jenis Rectangle
sebagai penerima dan mengira luas segi empat tepat melalui r.width
dan r.height
.
Seterusnya, dalam fungsi main
, kami mencipta objek Rectangle
jenis r
dan memanggil kaedah area()
untuk mengira luasnya. Apa yang perlu diperhatikan di sini ialah kita boleh memanggil kaedah statik secara terus melalui r.area()
dan bukannya menggunakan nama kelas seperti bahasa berorientasikan objek tradisional.
Adalah penting untuk ambil perhatian bahawa kaedah statik hanya boleh digunakan dalam pakej yang sama. Jika anda ingin menggunakan kaedah statik dalam pakej lain, anda perlu menggunakan huruf besar pertamanya.
Ringkasan:
Walaupun tiada kelas dalam Golang dan tiada kaedah statik di Jawa, ia menyediakan mekanisme yang serupa dengan kaedah statik - penerima . Dengan menambahkan penerima pada parameter fungsi, anda boleh menentukan kaedah statik yang dikaitkan dengan struktur tetapi tidak perlu mengakses sebarang data struktur. Struktur di Golang mempunyai kaedah tersendiri, dan kaedah statik boleh dipanggil sama seperti kaedah biasa. Perlu diingatkan bahawa kaedah statik hanya boleh digunakan dalam pakej yang sama.
Atas ialah kandungan terperinci Pemahaman mendalam tentang kaedah statik dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!