Sobes.tech
Junior — Middle

Είναι δυνατόν να δηλώσετε μεθόδους με ιδιωτικό πεδίο ορατότητας στη γλώσσα Go;

sobes.tech AI

Απάντηση από AI

Στο Go, η ορατότητα των μεθόδων καθορίζεται από το αν το όνομα της μεθόδου αρχίζει με κεφαλαίο ή μικρό γράμμα. Αν το όνομα της μεθόδου αρχίζει με κεφαλαίο γράμμα, εξάγεται (δημόσιο), αν αρχίζει με μικρό γράμμα, η μέθοδος είναι ιδιωτική (προσβάσιμη μόνο μέσα στο πακέτο). Έτσι, στο Go δεν υπάρχει η λέξη-κλειδί private, αλλά μπορείς να δηλώσεις μια μέθοδο με ιδιωτικό πεδίο ορατότητας απλώς ξεκινώντας το όνομά της με μικρό γράμμα.

Παράδειγμα:

package mypackage

type MyStruct struct {}

func (m MyStruct) publicMethod() {
    // ιδιωμένη μέθοδος, προσβάσιμη μόνο μέσα στο πακέτο mypackage
}

func (m MyStruct) PublicMethod() {
    // δημόσια μέθοδος, προσβάσιμη από άλλα πακέτα
}

Η κλήση της publicMethod θα είναι δυνατή μόνο μέσα στο πακέτο mypackage.