Junior — Middle
Kas on võimalik deklareerida meetodeid, millel on privaatne nähtavus Go keeles?
sobes.tech AI
Vastus AI-lt
Go-s meetodite vahemiku määrab meetodi nime esimese tähe suur või väike täht. Kui meetodi nimi algab suure tähega, see eksporditakse (avalik), kui väikese tähega, on meetod privaatne (saadaval ainult paketis). Seega, Go-s puudub võtmesõna private, kuid saab deklareerida meetodi privaatse vahemikuga, lihtsalt alustades selle nime väikese tähega.
Näide:
package mypackage
type MyStruct struct {}
func (m MyStruct) publicMethod() {
// privaatne meetod, saadaval ainult paketis mypackage
}
func (m MyStruct) PublicMethod() {
// avalik meetod, saadaval teiste paketidena
}
Kutse publicMethod on võimalik ainult paketis mypackage.