Metode în Golang

Metodele din Golang  sunt ca funcții, dar cu o diferență majoră: au un argument receptor , care permite accesul la proprietățile receptorului . Receptorul poate fi de tip struct sau non-struct, dar ambele trebuie să fie în același pachet. Nu este posibil să se creeze metode pentru tipurile definite în alte pachete, inclusiv tipurile încorporate precum int sau string ; În caz contrar, compilatorul va raporta o eroare.

Metode în Golang

De exemplu:

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()
}

Rezultat:

Name: a
Age: 25

Sintaxă

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

Receptor: poate fi accesat folosind această metodă.

Metodă cu receptor de tip struct

În Go, puteți defini o metodă în care receptorul este de tip struct. Receptorul este accesibil în cadrul metodei. Exemplul anterior ilustrează această abordare cu un receptor de tip struct.

Metoda cu Receiver nu este de tip struct

Go permite, de asemenea, metodelor să aibă receptori non-struct, atâta timp cât tipul de receptor și definiția metodei sunt în același pachet. Nu puteți defini o metodă cu un tip de receptor dintr-un alt pachet (de exemplu, int, șir).

De exemplu:

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)
}

Rezultat:

Square of 4 is 16

Metoda cu pointer receptor

În Go, metodele pot avea receptori pointer. Acest lucru permite ca modificările făcute în metodă să fie reflectate în apelant, ceea ce nu este posibil cu receptorii de valoare.

Sintaxă:

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

De exemplu:

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)
}

Rezultat:

Before: a
After: b

Metoda acceptă atât pointer, cât și valoare

Spre deosebire de funcții, metodele Go pot accepta atât receptori de valoare, cât și de tip pointer. Puteți trece indicatori sau valori, iar metoda se va descurca în consecință.

De exemplu:

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()
}

Rezultat:

After pointer method: b
Name: b

Diferența dintre metodă și funcție

Metodă Falca
Conține un receptor Nu contine receptor
Este posibil să se definească metode cu același nume, dar tipuri diferite. Nu sunt permise funcții cu același nume, dar tipuri diferite.
Nu poate fi folosit ca superlativ Poate fi folosit ca obiecte superordonate

Leave a Comment

Cum se remediază eroarea contului de lucru Microsoft Teams

Cum se remediază eroarea contului de lucru Microsoft Teams

Te-ai săturat de eroarea frustrantă a contului de lucru Microsoft Teams care îți blochează productivitatea? Descoperă soluții dovedite, pas cu pas, pentru a o remedia rapid - golește memoria cache, resetează aplicația și multe altele. Fă Teams să funcționeze perfect chiar astăzi!

Cum să remediați eroarea neașteptată de descărcare a Microsoft Teams

Cum să remediați eroarea neașteptată de descărcare a Microsoft Teams

Te-ai săturat de erorile de descărcare Microsoft Teams care îți blochează fluxul de lucru în mod neașteptat? Urmărește ghidul nostru expert, pas cu pas, cu remedieri rapide și sfaturi avansate pentru a o rezolva instantaneu. Nu este necesară reinstalarea!

Cum să goliți memoria cache Microsoft Teams pentru a remedia problemele de performanță

Cum să goliți memoria cache Microsoft Teams pentru a remedia problemele de performanță

Te chinui cu Microsoft Teams lent? Află cum să golești memoria cache Microsoft Teams pas cu pas pentru a remedia problemele de performanță, întârzierile, blocările și a crește viteza pe Windows, Mac, web și mobil. Soluții rapide care funcționează!

Cum să remediați eroarea 1200 din Microsoft Teams pe telefon (iOS/Android)

Cum să remediați eroarea 1200 din Microsoft Teams pe telefon (iOS/Android)

Te-ai săturat de eroarea 1200 din Microsoft Teams care îți blochează apelurile telefonice? Descoperă remedieri rapide, pas cu pas, pentru iOS și Android, pentru a reveni rapid la munca în echipă fără probleme - nu sunt necesare cunoștințe tehnice!

Unde puteți găsi ID-ul și informațiile contului dvs. Microsoft Teams

Unde puteți găsi ID-ul și informațiile contului dvs. Microsoft Teams

Întâmpinați dificultăți în a vă localiza ID-ul sau detaliile contului Microsoft Teams? Acest ghid pas cu pas vă arată exact unde puteți găsi ID-ul și informațiile contului Microsoft Teams pe desktop, web, mobil și alte dispozitive, pentru o colaborare fără probleme.

Rezolvarea erorii de alăturare la întâlnire în Microsoft Teams prin link direct

Rezolvarea erorii de alăturare la întâlnire în Microsoft Teams prin link direct

Te confrunți cu eroarea „Alătură-te întâlnirii” din Microsoft Teams? Descoperă pași demonstrați pentru a o rezolva prin linkuri directe. Soluții rapide pentru o alăturare fără probleme - nu sunt necesare abilități tehnice!

Cum se utilizează Microsoft Teams pentru afaceri și educație (Tutorial 2026)

Cum se utilizează Microsoft Teams pentru afaceri și educație (Tutorial 2026)

Deblochează puterea Microsoft Teams în 2026 cu acest tutorial cuprinzător. Aflați sfaturi esențiale pentru colaborarea în afaceri și educație, de la configurare la funcții avansate pentru o productivitate fără probleme. Perfect atât pentru echipe, cât și pentru sălile de clasă!

Unde descarcă Microsoft Teams fișierele pe computer?

Unde descarcă Microsoft Teams fișierele pe computer?

Descoperiți de unde descarcă Microsoft Teams fișierele pe computer. Aflați locațiile implicite pentru Windows, Mac, Linux, cum să le schimbați și sfaturi pentru a găsi fișiere instantaneu. Economisiți timp cu acest ghid complet!

De ce a eșuat înregistrarea mea în Microsoft Teams? Motive frecvente

De ce a eșuat înregistrarea mea în Microsoft Teams? Motive frecvente

Frustrat pentru că înregistrarea ta în Microsoft Teams a eșuat? Descoperă principalele motive comune, cum ar fi problemele de permisiuni, limitele de stocare și erorile de rețea, plus remedieri pas cu pas pentru a preveni viitoarele erori și a înregistra impecabil de fiecare dată.

Cum se remediază eroarea de conectare la Microsoft Teams pe Chromebookuri

Cum se remediază eroarea de conectare la Microsoft Teams pe Chromebookuri

Vă confruntați cu o eroare de conectare la Microsoft Teams pe Chromebookuri? Descoperiți soluții pas cu pas pentru a rezolva rapid problemele de conectare. Ștergeți memoria cache, actualizați aplicațiile și multe altele pentru o muncă în echipă fără probleme. Funcționează pe cel mai recent sistem de operare Chrome!

Cum se sincronizează Microsoft Teams cu OneDrive pentru partajarea fișierelor

Cum se sincronizează Microsoft Teams cu OneDrive pentru partajarea fișierelor

Stăpânește cum să sincronizezi Microsoft Teams cu OneDrive pentru partajarea ușoară a fișierelor. Instrucțiuni pas cu pas, sfaturi și depanare pentru productivitate maximă în fluxul de lucru.

De ce nu pot vedea sălile de discuții separate în întâlnirile mele Teams?

De ce nu pot vedea sălile de discuții separate în întâlnirile mele Teams?

Frustrat(ă) pentru că lipsesc sălile de grup în cadrul întâlnirii tale Teams? Descoperă principalele motive pentru care nu poți vedea sălile de grup în Teams și urmează remedierile noastre pas cu pas pentru a le face să funcționeze fără probleme în câteva minute. Perfect atât pentru organizatori, cât și pentru participanți!

Depanarea problemelor de întârziere a videoconferințelor Microsoft Teams pe Wi-Fi

Depanarea problemelor de întârziere a videoconferințelor Microsoft Teams pe Wi-Fi

Vă confruntați cu întârzierea videoconferințelor Microsoft Teams pe Wi-Fi? Acest ghid complet de depanare oferă remedieri rapide, sfaturi avansate și optimizări Wi-Fi pentru a restabili instantaneu apeluri video clare.

Unde se află Microsoft Teams în Outlook? Localizarea pictogramei lipsă

Unde se află Microsoft Teams în Outlook? Localizarea pictogramei lipsă

Frustrat de lipsa pictogramei Microsoft Teams din Outlook? Află exact unde o găsești, de ce dispare și pașii demonstrați pentru a o restaura pentru întâlniri fără efort. Actualizat pentru cele mai recente versiuni!

Depanarea buclei de pornire a ecranului de bun venit din Microsoft Teams

Depanarea buclei de pornire a ecranului de bun venit din Microsoft Teams

Frustrat de bucla de pornire a ecranului de bun venit din Microsoft Teams? Urmați pașii noștri dovediți pentru depanarea buclei de pornire a ecranului de bun venit din Microsoft Teams: goliți memoria cache, resetați aplicația, reinstalați. Reveniți la o colaborare fără probleme în câteva minute!