Διαδρομές
/
Go
Go
/
Ύλη
/
Μέθοδοι
Μέ

Μέθοδοι σε Go

3 ασκήσεις

Σχετικά με την έννοια Μέθοδοι

Μια μέθοδος είναι μια συνάρτηση με ένα ειδικό όρισμα, τον δέκτη. Ο δέκτης εμφανίζεται στη δική του λίστα ορισμάτων, ανάμεσα στη λέξη-κλειδί func και στο όνομα της μεθόδου.

func (receiver type) MethodName(parameters) (returnTypes) {

}

Μπορείς να ορίσεις μια μέθοδο με δέκτη του οποίου ο τύπος είναι ορισμένος στο ίδιο πακέτο με τη μέθοδο.

type Person struct {
	Name string
}

func (p Person) Greetings() string {
	return fmt.Sprintf("Welcome %s!", p.Name)
}

s := Person{Name: "Bronson"}
fmt.Println(s.Greetings())
// Output: Welcome Bronson!

Υπάρχουν δύο τύποι δεκτών: οι δέκτες τιμής και οι δέκτες δείκτη.

Οι μέθοδοι με δέκτη τιμής λειτουργούν σε ένα αντίγραφο της τιμής που τους περνάς, που σημαίνει ότι οποιαδήποτε αλλαγή γίνει στον δέκτη μέσα στη μέθοδο δεν είναι ορατή σε αυτόν που καλεί τη μέθοδο.

Μπορείς να δηλώσεις μεθόδους με δέκτες δείκτη, ώστε να τροποποιήσεις την τιμή στην οποία δείχνει ο δέκτης. Τέτοιες αλλαγές είναι ορατές και σε αυτόν που καλεί τη μέθοδο.

type rect struct {
	width, height int
}

func (r *rect) squareIt() {
	r.height = r.width
}

r := rect{width: 10, height: 20}
fmt.Printf("Width: %d, Height: %d\n", r.width, r.height)
// Output: Width: 10, Height: 20

r.squareIt()
fmt.Printf("Width: %d, Height: %d\n", r.width, r.height)
// Output: Width: 10, Height: 10

Μπορείς να βρεις αρκετά παραδείγματα εδώ. Ρίξε επίσης μια ματιά σε αυτό το σύντομο φροντιστήριο για τις μεθόδους.

Θυμήσου: μια μέθοδος είναι απλώς μια συνάρτηση με ένα όρισμα-δέκτη.

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα

Μάθε την έννοια Μέθοδοι

Η εξάσκηση είναι κλειδωμένη

Ξεκλείδωσε 2 ακόμη ασκήσεις για να εξασκηθείς στην έννοια Μέθοδοι