Rumah > pembangunan bahagian belakang > Golang > pengisytiharan kaedah golang

pengisytiharan kaedah golang

PHPz
Lepaskan: 2023-05-16 16:54:08
asal
528 orang telah melayarinya

Golang ialah bahasa pengaturcaraan yang sangat popular yang dibangunkan oleh Google Sintaksnya yang unik dan prestasi yang berkuasa menjadikannya popular secara meluas. Di Golang, pengisytiharan kaedah adalah pengetahuan asas yang sangat penting kerana ia memainkan peranan penting dalam pengaturcaraan berorientasikan objek.

Di Golang, kami boleh menggunakan kaedah untuk melanjutkan kefungsian jenis Kaedah boleh ditakrifkan dalam struktur atau dalam fail kod sumber untuk sebarang jenis (walaupun jenis asas). Dalam artikel ini, kami akan meneroka asas pengisytiharan kaedah Golang, termasuk sintaks kaedah, parameter dan jenis nilai pulangan, dsb.

Sintaks kaedah

Di Golang, kita boleh menggunakan sintaks berikut untuk mengisytiharkan kaedah:

func (t Type) methodName(parameterList) (returnTypeList) {

// 方法体
Salin selepas log masuk

}

Antaranya, func ialah kata kunci yang digunakan untuk mengisytiharkan kaedah, Jenis ialah jenis parameter penerima, methodName ialah nama kaedah, parameterList ialah senarai parameter kaedah, dan returnTypeList ialah pengembalian kaedah.

Dalam sintaks di atas, Jenis boleh menjadi jenis struktur atau jenis lain. Parameter penerima ialah jenis kaedah ditakrifkan, yang bermaksud kita boleh mengakses kaedah menggunakan contoh di mana kaedah dipanggil. Jika kita mentakrifkan jenis struct, kita boleh menggunakannya untuk memanggil kaedah seperti ini:

taip Rectangle struct {

width, height float64
Salin selepas log masuk

}

func (r Rectangle) area () float64 {

return r.width * r.height
Salin selepas log masuk

}

r := Rectangle{3, 4}
fmt.Println(r.area())

dalam kod di atas , kami takrifkan a Rectangle type and an area() method Parameter penerima kaedah area() adalah dari Rectangle type. Kami mencipta contoh Rectangle r dan menggunakannya untuk memanggil kaedah kawasan() untuk mengira luas segi empat tepat.

Kemudian lihat senarai parameter dan senarai nilai pulangan. Senarai parameter mengandungi sifar atau lebih parameter dan jenis parameter ini boleh menjadi sebarang jenis Golang yang sah. Senarai nilai pulangan mewakili nilai pulangan kaedah, yang terdiri daripada 0 atau lebih nilai pulangan Jenis nilai pulangan ini juga boleh menjadi sebarang jenis Golang yang sah.

Berikut ialah contoh yang menunjukkan cara mentakrifkan kaedah dengan dua parameter dan nilai pulangan:

taip Person struct {

name string
age  int
Salin selepas log masuk

}

func (p Orang) fullName(firstName string, lastName string) string {

p.name = firstName + " " + lastName
return p.name
Salin selepas log masuk

}

person := Person{"Jerry", 28}
fmt.Println( person.fullName( "John", "Doe"))

Dalam contoh ini, kami mentakrifkan jenis Orang dan kaedahNama penuh(). Kaedah fullName() mempunyai dua parameter: firstName dan lastName Ia juga mempunyai nilai pulangan rentetan jenis. Dalam kaedah fullName(), kami menggabungkan firstName dan lastName menjadi nama lengkap, kemudian berikannya kepada medan nama dalam struktur Person dan kembalikan nama ini.

Parameter dan jenis nilai pulangan

Senarai parameter dan senarai nilai pulangan kaedah Golang adalah sangat fleksibel, ia boleh berupa mana-mana jenis data Golang yang sah. Dalam definisi kaedah, parameter dan jenis nilai pulangan boleh sama atau berbeza. Mari kita lihat contoh berikut:

taip Student struct {

name      string
age       int
grade     int
addresses []string
Salin selepas log masuk

}

func (s *Pelajar) changeName(name string) {

s.name = name
Salin selepas log masuk

}

func (s *Pelajar) getAddresses() []rentetan {

return s.addresses
Salin selepas log masuk

}

pelajar := Pelajar{"Joe", 12, 6, [ ] rentetan{"Beijing", "Shanghai"}}
fmt.Println(nama.pelajar)
murid.changeName("Tom")
fmt.Println(nama.pelajar)

addresses := student.getAddresses()
fmt.Println(addresses)

Dalam kod di atas, kami mentakrifkan struktur Pelajar dan dua kaedah: changeName() dan getAddresses(). Parameter penerima kaedah changeName() ialah penunjuk kepada struktur Pelajar, yang tidak mempunyai nilai pulangan, manakala parameter penerima kaedah getAddresses() ialah penunjuk kepada struktur Pelajar, dan nilai pulangannya ialah tatasusunan rentetan.

Dalam kaedah changeName(), kami menetapkan medan nama contoh Pelajar kepada nilai baharu, dan dalam kaedah getAddresses(), kami terus mengembalikan medan alamat contoh Pelajar.

Ringkasan

Seperti yang dinyatakan dalam artikel ini, pengisytiharan kaedah adalah bahagian yang sangat penting dalam pengaturcaraan Golang. Antaranya, sintaks kaedah, parameter dan jenis nilai pulangan merupakan tiga aspek yang perlu kita ambil perhatian. Dengan memahami definisi dan penggunaan kaedah Golang, kami boleh menggunakan ciri-ciri cemerlang Golang dengan lebih baik dan membangunkan aplikasi yang lebih cekap dan cemerlang.

Atas ialah kandungan terperinci pengisytiharan kaedah golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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