Antara muka dan kaedah Golang
Golang (atau Go) ialah bahasa pengaturcaraan sumber terbuka yang dibangunkan oleh Google. Ia menyediakan pengalaman pengaturcaraan yang cekap melalui model konkurensi yang unik dan pengumpul sampah. Antara muka dan kaedah di Golang adalah salah satu konsep terasnya dan sangat penting untuk menguasai bahasa pengaturcaraan Golang.
Antaramuka dalam Golang
Antaramuka ialah satu cara untuk mencapai polimorfisme. Ia mentakrifkan satu set spesifikasi untuk kod program, ia dipanggil jenis antara muka. Mereka mentakrifkan satu set kaedah tetapi tidak menyediakan pelaksanaan. Walaupun tanpa mengisytiharkan jenis antara muka tertentu secara eksplisit, program Go masih boleh menyemak sama ada sesuatu jenis memenuhi keperluan antara muka tertentu.
Di Golang, antara muka adalah sangat penting. Jika anda ingin menggunakan Golang, maka anda mesti memahami definisi dan pelaksanaan antara muka Golang. Berikut ialah beberapa contoh takrifan antara muka Golang:
package main import "fmt" type Interface1 interface { method1() string } type Interface2 interface { method2() int } type Interface3 interface { Interface1 Interface2 method3() bool } type Struct1 struct { name string } type Struct2 struct { age int } func (s1 *Struct1) method1() string { return s1.name } func (s2 *Struct2) method2() int { return s2.age } func (s3 *Struct1) method3() bool { return true } func main() { s1 := Struct1{name: "John"} s2 := Struct2{age: 30} var iInterface1 Interface1 = &s1 var iInterface2 Interface2 = &s2 var iInterface3 Interface3 = &s3 fmt.Println(iInterface1.method1()) fmt.Println(iInterface2.method2()) fmt.Println(iInterface3.method3()) }
Dalam contoh ini, kami telah mentakrifkan 3 antara muka, iaitu Interface1
, Interface2
dan Interface3
. Di mana Interface3
mewarisi Interface1
dan Interface2
. Kami juga menentukan dua struktur Struct1
dan Struct2
dan melaksanakan kaedah antara muka yang sepadan untuk mereka. Dalam fungsi main()
, kami menggunakan antara muka ini untuk memanggil kaedahnya.
Kaedah dalam Golang
Kaedah ialah fungsi yang dikaitkan dengan jenis tertentu yang boleh mengakses data jenis tersebut. Di Golang, kaedah ialah cara mengehadkan fungsi kepada jenis tertentu. Mereka boleh digunakan untuk mewakili jenis tingkah laku yang boleh dipanggil oleh objek lain. Kaedah boleh menjadi kaedah nilai atau kaedah penunjuk, bergantung pada sama ada ia mengubah suai nilai penerima.
Berikut ialah contoh definisi kaedah di Golang:
package main import "fmt" type Struct1 struct { name string } func (s1 Struct1) method1() string { return s1.name } func (s1 *Struct1) method2() { s1.name = "Jane" } func main() { s1 := Struct1{name: "John"} fmt.Println(s1.method1()) s1.method2() fmt.Println(s1.method1()) }
Dalam contoh ini, kami mentakrifkan jenis Struct1
dan dua kaedah method1()
dan method2()
. Ambil perhatian bahawa penerima method2()
ialah penunjuk kepada struktur, jadi ia boleh mengubah suai nilai struktur. Dalam fungsi main()
, kami mencipta objek Struct1
dan memanggil kedua-dua kaedah ini masing-masing.
Sarang antara muka dan penegasan jenis
Di Golang, antara muka juga boleh disarang seperti struktur. Sarang antara muka boleh digunakan untuk menggabungkan keupayaan berbilang antara muka. Golang juga menyediakan operator penegasan jenis untuk menukar antara muka kepada nilai jenis lain.
Berikut ialah contoh penegasan bersarang dan jenis penegasan antara muka Golang:
package main import "fmt" type Interface1 interface { method1() string } type Interface2 interface { method2() int } type Struct1 struct { name string } func (s1 *Struct1) method1() string { return s1.name } func (s1 *Struct1) method2() int { return len(s1.name) } func main() { s1 := Struct1{name: "John"} var iInterface1 Interface1 = &s1 var iInterface2 Interface2 = iInterface1.(Interface2) fmt.Println(iInterface2.method2()) }
Dalam contoh ini, kami mentakrifkan antara muka Interface1
dan Interface2
dan menyediakan struktur Struct1
The badan melaksanakan dua kaedah method1()
dan method2()
. Dalam fungsi main()
, kami menghantar objek Struct1
ke antara muka Interface1
dan menghantarnya semula ke antara muka Interface2
. Kemudian kami memanggil kaedah method2()
dan mencetak hasilnya.
Ringkasan
Di Golang, antara muka dan kaedah ialah salah satu konsep yang paling penting. Mereka menyediakan pengalaman pengaturcaraan yang lebih cekap di Golang. Dengan menggunakan antara muka, kita boleh menyatakan tingkah laku abstrak bebas daripada jenis. Juga menggunakan kaedah, kita boleh mengehadkan fungsi kepada jenis tertentu dan bekerja dengan pelbagai data dan jenis data dengan cara yang lebih langsung. Oleh itu, memahami konsep antara muka dan kaedah adalah asas penting untuk pengaturcaraan Golang.
Atas ialah kandungan terperinci antara muka dan kaedah golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

C lebih sesuai untuk senario di mana kawalan langsung sumber perkakasan dan pengoptimuman prestasi tinggi diperlukan, sementara Golang lebih sesuai untuk senario di mana pembangunan pesat dan pemprosesan konkurensi tinggi diperlukan. Kelebihan 1.C terletak pada ciri-ciri perkakasan dan keupayaan pengoptimuman yang tinggi, yang sesuai untuk keperluan berprestasi tinggi seperti pembangunan permainan. 2. Kelebihan Golang terletak pada sintaks ringkas dan sokongan konvensional semulajadi, yang sesuai untuk pembangunan perkhidmatan konvensional yang tinggi.

Golang cemerlang dalam aplikasi praktikal dan terkenal dengan kesederhanaan, kecekapan dan kesesuaiannya. 1) Pengaturcaraan serentak dilaksanakan melalui goroutine dan saluran, 2) Kod fleksibel ditulis menggunakan antara muka dan polimorfisme, 3) memudahkan pengaturcaraan rangkaian dengan pakej bersih/HTTP, 4) Membina crawler serentak yang cekap, 5) Debugging dan mengoptimumkan melalui alat dan amalan terbaik.

Ciri -ciri teras GO termasuk pengumpulan sampah, penyambungan statik dan sokongan konvensional. 1. Model keseragaman bahasa GO menyedari pengaturcaraan serentak yang cekap melalui goroutine dan saluran. 2. Antara muka dan polimorfisme dilaksanakan melalui kaedah antara muka, supaya jenis yang berbeza dapat diproses secara bersatu. 3. Penggunaan asas menunjukkan kecekapan definisi fungsi dan panggilan. 4. Dalam penggunaan lanjutan, kepingan memberikan fungsi saiz semula dinamik yang kuat. 5. Kesilapan umum seperti keadaan kaum dapat dikesan dan diselesaikan melalui perlumbaan getest. 6. Pengoptimuman prestasi menggunakan objek melalui sync.pool untuk mengurangkan tekanan pengumpulan sampah.

Pergi bahasa berfungsi dengan baik dalam membina sistem yang cekap dan berskala. Kelebihannya termasuk: 1. Prestasi Tinggi: Disusun ke dalam Kod Mesin, Kelajuan Berjalan Cepat; 2. Pengaturcaraan serentak: Memudahkan multitasking melalui goroutine dan saluran; 3. Kesederhanaan: sintaks ringkas, mengurangkan kos pembelajaran dan penyelenggaraan; 4. Cross-Platform: Menyokong kompilasi silang platform, penggunaan mudah.

Keliru mengenai penyortiran hasil pertanyaan SQL. Dalam proses pembelajaran SQL, anda sering menghadapi beberapa masalah yang mengelirukan. Baru-baru ini, penulis membaca "Asas Mick-SQL" ...

Hubungan antara konvergensi stack teknologi dan pemilihan teknologi dalam pembangunan perisian, pemilihan dan pengurusan susunan teknologi adalah isu yang sangat kritikal. Baru -baru ini, beberapa pembaca telah mencadangkan ...

Golang ...

Bagaimana membandingkan dan mengendalikan tiga struktur dalam bahasa Go. Dalam pengaturcaraan GO, kadang -kadang perlu untuk membandingkan perbezaan antara dua struktur dan menggunakan perbezaan ini kepada ...


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan