Sobes.tech
Junior — Middle

Megengedett-e, hogy egy interfészben egy metódus nevét kisbetűvel kezdjük?

sobes.tech MI

Válasz az MI-től

A Go (Golang) nyelvben a metódusnevek, amelyek kisbetűvel kezdődnek, nem exportáltaknak számítanak, vagyis csak azon a csomagon belül érhetők el, ahol deklarálták őket. Egy interfészben meg lehet határozni kisbetűvel kezdődő metódusneveket, de ekkor ez az interfész csak a csomagon belül lesz hasznos, mivel külsőről ezek a metódusok nem lesznek láthatók.

Ha az interfész exportálva van (nagybetűvel kezdődik), általában a metódusai is exportálva lesznek (nagybetűvel kezdődnek), hogy a csomagon kívül is elérhetők legyenek.

Példa:

package example

type MyInterface interface {
    doSomething() // kisbetűs, nem exportált metódus
}

Ez az interfész és a metódusa csak az example csomagon belül érhető el.

Összefoglalva: megengedett kisbetűvel kezdődő metódusnevek deklarálása egy interfészben, de ez korlátozza azok láthatóságát a csomagon belül.