Junior — Middle
Est-il possible de déclarer des méthodes avec une portée privée dans le langage Go?
sobes.tech IA
Réponse de l'IA
En Go, la portée des méthodes est déterminée par la majuscule ou la minuscule du nom de la méthode. Si le nom de la méthode commence par une majuscule, elle est exportée (publique), si elle commence par une minuscule, la méthode est privée (accessible uniquement à l'intérieur du package). Ainsi, en Go, il n'y a pas de mot-clé private, mais on peut déclarer une méthode avec une portée privée simplement en commençant son nom par une minuscule.
Exemple:
package mypackage
type MyStruct struct {}
func (m MyStruct) publicMethod() {
// méthode privée, accessible uniquement à l'intérieur du package mypackage
}
func (m MyStruct) PublicMethod() {
// méthode publique, accessible depuis d'autres packages
}
L'appel à publicMethod ne sera possible qu'à l'intérieur du package mypackage.