Rumah >pembangunan bahagian belakang >Golang >Terokai aplikasi praktikal kaedah kelas dan kaedah objek dalam bahasa Go

Terokai aplikasi praktikal kaedah kelas dan kaedah objek dalam bahasa Go

WBOY
WBOYasal
2024-04-03 14:42:02699semak imbas

Perbezaan dan aplikasi antara kaedah kelas dan kaedah objek: Kaedah kelas: bertindak mengikut jenis itu sendiri, tidak memerlukan panggilan tika objek dan digunakan untuk mencipta kejadian baharu atau melaksanakan operasi peringkat jenis. Kaedah objek: mesti dipanggil melalui contoh objek dan digunakan untuk mengubah suai keadaan objek atau mengakses medan peribadi. Penerima mestilah jenis penunjuk. . . Untuk operasi pada jenis objek, Go menyediakan dua kaedah: kaedah kelas dan kaedah objek. Artikel ini akan menyelidiki perbezaan antara kedua-dua dan menunjukkan penggunaannya dalam aplikasi praktikal melalui kes praktikal.

Terokai aplikasi praktikal kaedah kelas dan kaedah objek dalam bahasa GoKaedah kelas

Kaedah kelas tidak memerlukan contoh objek untuk dipanggil, ia beroperasi secara langsung pada jenis itu sendiri. Kata kunci func diikuti dengan nama jenis mentakrifkan kaedah kelas.

type Person struct {
    Name string
}

// 类方法
func (p Person) Greet() string {
    return "Hello, " + p.Name
}

Kaedah Objek

Kaedah objek mesti dipanggil melalui contoh objek tertentu. Kata kunci func diikuti dengan nama jenis dan penerima (receiver) mentakrifkan kaedah objek.

type Person struct {
    Name string
}

// 对象方法
func (p *Person) ChangeName(newName string) {
    p.Name = newName
}

Sila ambil perhatian bahawa penerima kaedah objek mestilah jenis penunjuk, kerana objek itu sendiri diubah suai.

Aplikasi praktikalfunc 后跟类型名称来定义类方法。

type Player struct {
    Name string
    Score int
}

// 类方法:创建新玩家实例
func (p Player) New(name string, score int) *Player {
    return &Player{name, score}
}

对象方法

对象方法必须通过特定对象实例进行调用。关键字 func 后跟类型名称和接收者 (receiver)

  • Contoh kaedah kelas:

Digunakan untuk mencipta tika baharu atau mendapatkan nilai lalai bagi jenis tertentu.

Digunakan untuk melakukan operasi peringkat jenis seperti pengisihan atau perbandingan.

Kes Penggunaan:
  • type Account struct {
        Balance int
    }
    
    // 对象方法:扣款
    func (a *Account) Debit(amount int) {
        a.Balance -= amount
    }
  • Kaedah Objek Contoh:

Digunakan untuk mengubah suai keadaan objek atau melakukan operasi tertentu.

Digunakan untuk mengakses medan peribadi objek.

Kes penggunaan:
  • rrreee
  • Kesimpulan

Kaedah kelas dan kaedah objek menyediakan mekanisme yang fleksibel dan berkuasa dalam bahasa Go untuk memanipulasi jenis objek. Memahami tujuan setiap kaedah dan mempraktikkan aplikasinya melalui contoh praktikal boleh membina program Go yang mantap dan boleh diselenggara dengan berkesan.

Atas ialah kandungan terperinci Terokai aplikasi praktikal kaedah kelas dan kaedah objek dalam bahasa Go. 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