Kaedah di Golang

Kaedah dalam Golang  adalah seperti fungsi tetapi dengan satu perbezaan utama: mereka mempunyai hujah penerima , yang membenarkan akses kepada sifat penerima . Penerima boleh terdiri daripada jenis struct atau bukan struct, tetapi kedua-duanya mestilah dalam pakej yang sama. Tidak mustahil untuk mencipta kaedah untuk jenis yang ditakrifkan dalam pakej lain, termasuk jenis terbina dalam seperti int atau rentetan ; Jika tidak, pengkompil akan melaporkan ralat.

Kaedah di Golang

Contohnya:

package main

import "fmt"

// Định nghĩa một struct
type person struct {
    name string
    age  int
}

// Định nghĩa một phương thức với struct receiver
func (p person) display() {
    fmt.Println("Name:", p.name)
    fmt.Println("Age:", p.age)
}

func main() {
    // Tạo một phiên bản của struct
    a := person{name: "a", age: 25}
    
    // Gọi phương thức
    a.display()
}

Keputusan:

Name: a
Age: 25

Sintaks

func(receiver_name Type)  method_name(parameter_list) (return_type) { 
// Code
}

Penerima: Boleh diakses menggunakan kaedah ini.

Kaedah dengan Penerima jenis struct

Dalam Go, anda boleh menentukan kaedah di mana penerima adalah jenis struct. Penerima boleh diakses di dalam kaedah. Contoh sebelumnya menggambarkan pendekatan ini dengan struktur jenis Penerima.

Kaedah dengan Penerima bukan jenis struct

Go juga membenarkan kaedah mempunyai penerima bukan struktur, selagi jenis penerima dan definisi kaedah berada dalam pakej yang sama. Anda tidak boleh menentukan kaedah dengan jenis penerima daripada pakej lain (cth. int, rentetan).

Contohnya:

package main

import "fmt"

// Tạo một kiểu tùy biến dựa trên int
type number int

// Định nghĩa một phương thức với receiver không phải struct
func (n number) square() number {
    return n * n
}

func main() {
    a := number(4)
    b := a.square()

    fmt.Println("Square of", a, "is", b)
}

Keputusan:

Square of 4 is 16

Kaedah dengan penunjuk penerima

Dalam Go, kaedah boleh mempunyai penerima penunjuk. Ini membolehkan perubahan yang dibuat dalam kaedah ditunjukkan dalam pemanggil, yang tidak mungkin dilakukan dengan penerima nilai.

Sintaks:

func (p *Type) method_name(...Type) Type {    // Code}

Contohnya:

package main

import "fmt"

// Defining a struct
type person struct {
    name string
}

// Phương thức với receiver pointer để chỉnh sửa dữ liệu
func (p *person) changeName(newName string) {
    p.name = newName
}

func main() {
    a := person{name: "a"}
    
    fmt.Println("Before:", a.name)
    
    // Gọi phương thức này để thay đổi tên
    a.changeName("b")
    
    fmt.Println("After:", a.name)
}

Keputusan:

Before: a
After: b

Kaedah menerima kedua-dua penunjuk dan nilai

Tidak seperti fungsi, kaedah Go boleh menerima kedua-dua penerima nilai dan penunjuk. Anda boleh menghantar petunjuk atau nilai dan kaedah akan dikendalikan dengan sewajarnya.

Contohnya:

package main
import "fmt"

type person struct {
    name string
}
// Phương thức với receiver pointer
func (p *person) updateName(newName string) {
    p.name = newName
}

// Phương thức với receiver value 
func (p person) showName() {
    fmt.Println("Name:", p.name)
}

func main() {
    a := person{name: "a"}
    
    // Gọi phương thức con trỏ cùng giá trị
    a.updateName("b")
    fmt.Println("After pointer method:", a.name)
    
    // Gọi phương thức giá trị với con trỏ
    (&a).showName()
}

Keputusan:

After pointer method: b
Name: b

Perbezaan antara kaedah dan fungsi

Kaedah rahang
Mengandungi penerima Tidak mengandungi penerima
Adalah mungkin untuk menentukan kaedah dengan nama yang sama tetapi jenis yang berbeza. Fungsi dengan nama yang sama tetapi jenis yang berbeza tidak dibenarkan.
Tidak boleh digunakan sebagai superlatif Boleh digunakan sebagai objek superordinat

Leave a Comment

Cara Membaiki Microsoft Teams Di Mana Boleh Cari Ralat Team

Cara Membaiki Microsoft Teams Di Mana Boleh Cari Ralat Team

Bosan dengan ralat Microsoft Teams Where to Find Team yang mengecewakan? Dapatkan pembetulan langkah demi langkah untuk desktop, web dan mudah alih. Selesaikannya dengan cepat dengan panduan pakar kami—tiada kemahiran teknikal diperlukan!

Cara Membaiki Ralat Bantuan Cara Menggunakan Microsoft Teams

Cara Membaiki Ralat Bantuan Cara Menggunakan Microsoft Teams

Bosan dengan Ralat Bantuan Microsoft Teams yang mengecewakan yang menyekat aliran kerja anda? Dapatkan pembetulan langkah demi langkah yang berfungsi pada versi terkini. Kosongkan cache, kemas kini dan banyak lagi—tiada kemahiran teknikal diperlukan!

Cara Membaiki Ralat Log Masuk Microsoft Teams pada Chromebook

Cara Membaiki Ralat Log Masuk Microsoft Teams pada Chromebook

Menghadapi ralat log masuk Microsoft Teams pada Chromebook? Temui penyelesaian langkah demi langkah untuk menyelesaikan masalah log masuk dengan cepat. Kosongkan cache, kemas kini aplikasi dan banyak lagi untuk kerja berpasukan yang lancar. Berfungsi pada OS Chrome terkini!

Menyelesaikan Masalah Kelewatan Persidangan Video Microsoft Teams pada Wi-Fi

Menyelesaikan Masalah Kelewatan Persidangan Video Microsoft Teams pada Wi-Fi

Bergelut dengan kelewatan persidangan video Microsoft Teams semasa menggunakan Wi-Fi? Panduan penyelesaian masalah muktamad ini memberikan penyelesaian pantas, petua lanjutan dan pengoptimuman Wi-Fi untuk memulihkan panggilan video yang jelas serta-merta.

Mengapa Status Microsoft Teams Saya Tersekat?

Mengapa Status Microsoft Teams Saya Tersekat?

Kecewa dengan status Microsoft Teams anda yang tersekat pada Away? Ketahui sebab utama seperti tamat masa melahu dan tetapan kuasa, serta pembetulan langkah demi langkah untuk kembali ke Available dengan pantas. Dikemas kini dengan ciri Teams terkini.

Menyelesaikan Ralat Sertai Mesyuarat Microsoft Teams melalui Pautan Langsung

Menyelesaikan Ralat Sertai Mesyuarat Microsoft Teams melalui Pautan Langsung

Bergelut dengan Ralat Sertai Mesyuarat Microsoft Teams? Temui langkah-langkah terbukti untuk menyelesaikannya melalui pautan langsung. Penyelesaian pantas untuk penyertaan yang lancar – tiada kemahiran teknikal diperlukan!

Di Mana Boleh Cari Kod QR Microsoft Teams untuk Log Masuk Mudah Alih Pantas

Di Mana Boleh Cari Kod QR Microsoft Teams untuk Log Masuk Mudah Alih Pantas

Ketahui dengan tepat di mana untuk mencari Kod QR Microsoft Teams untuk log masuk mudah alih yang sangat pantas. Panduan langkah demi langkah dengan visual untuk memudahkan anda berhubung dalam beberapa saat—tiada kata laluan diperlukan!

Cara Membaiki Ralat Main Semula Media Microsoft Teams pada tahun 2026

Cara Membaiki Ralat Main Semula Media Microsoft Teams pada tahun 2026

Bosan dengan ralat main balik media Microsoft Teams yang merosakkan mesyuarat 2026 anda? Ikuti panduan pakar langkah demi langkah kami untuk membetulkan gangguan audio, video dan perkongsian dengan pantas—tiada kemahiran teknikal diperlukan. Kolaborasi yang lancar menanti!

Di manakah Kunci Pendaftaran Microsoft Teams Terletak pada Windows 11?

Di manakah Kunci Pendaftaran Microsoft Teams Terletak pada Windows 11?

Buka kunci lokasi tepat kunci pendaftaran Microsoft Teams pada Windows 11. Panduan langkah demi langkah untuk mencari, mengakses dan mengubahnya dengan selamat untuk prestasi dan penyelesaian masalah yang optimum. Penting untuk profesional IT dan peminat Teams.

Menyelesaikan Masalah Gelung Permulaan Skrin Aluan Microsoft Teams

Menyelesaikan Masalah Gelung Permulaan Skrin Aluan Microsoft Teams

Kecewa dengan gelung permulaan skrin alu-aluan Microsoft Teams? Ikuti langkah penyelesaian masalah yang terbukti untuk gelung permulaan skrin alu-aluan Microsoft Teams kami: kosongkan cache, tetapkan semula aplikasi, pasang semula. Kembali ke kolaborasi yang lancar dalam beberapa minit!

Penyelesaian Masalah Ralat Proksi Microsoft Teams

Penyelesaian Masalah Ralat Proksi Microsoft Teams

Bergelut dengan Ralat Proksi Microsoft Teams? Ketahui Penyelesaian Masalah Ralat Proksi Microsoft Teams yang terbukti Langkah-langkah pembetulan. Kosongkan cache, laraskan tetapan proksi dan kembali kepada panggilan lancar dalam beberapa minit dengan panduan pakar kami.

Di manakah Microsoft Teams dalam Outlook? Mencari Ikon yang Hilang

Di manakah Microsoft Teams dalam Outlook? Mencari Ikon yang Hilang

Kecewa dengan ikon Microsoft Teams yang hilang dalam Outlook? Ketahui dengan tepat di mana untuk mencarinya, mengapa ia hilang dan langkah-langkah terbukti untuk memulihkannya untuk mesyuarat yang mudah. ​​Dikemas kini untuk versi terkini!

Mengapa Microsoft Teams Begitu Perlahan? 10 Petua untuk Mempercepatkannya pada Tahun 2026

Mengapa Microsoft Teams Begitu Perlahan? 10 Petua untuk Mempercepatkannya pada Tahun 2026

Kecewa dengan Microsoft Teams yang lambat? Ketahui mengapa Microsoft Teams begitu perlahan dan gunakan 10 petua terbukti ini untuk mempercepatkannya secara dramatik pada tahun 2026 untuk kolaborasi yang lancar.

Cara Log Masuk ke Pusat Pentadbiran Microsoft Teams dengan Betul

Cara Log Masuk ke Pusat Pentadbiran Microsoft Teams dengan Betul

Kuasai cara log masuk ke Pusat Pentadbiran Microsoft Teams dengan betul dengan panduan langkah demi langkah kami yang tepat. Betulkan ralat biasa, pastikan keselamatan dan uruskan Teams dengan mudah untuk pentadbir di mana-mana sahaja.

Cara Muat Turun Microsoft Teams untuk Mac dan MacBook Air/Pro

Cara Muat Turun Microsoft Teams untuk Mac dan MacBook Air/Pro

Temui cara paling mudah untuk memuat turun Microsoft Teams untuk Mac, MacBook Air dan MacBook Pro. Arahan langkah demi langkah, keperluan sistem dan petua penyelesaian masalah untuk pemasangan yang lancar dalam versi terkini. Mulakan sekarang!