Terokai aplikasi praktikal kaedah kelas dan kaedah objek dalam bahasa Go

WBOY
Lepaskan: 2024-04-03 14:42:02
asal
673 orang telah melayarinya

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
}
Salin selepas log masuk

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
}
Salin selepas log masuk

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}
}
Salin selepas log masuk

对象方法

对象方法必须通过特定对象实例进行调用。关键字 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
    }
    Salin selepas log masuk

  • 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!

Label berkaitan:
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!