Maison >développement back-end >Golang >Implémentation d'encapsulation de la fonction golang dans la programmation orientée objet
L'encapsulation orientée objet est implémentée via des fonctions du langage Go. Créez d’abord un objet de définition de type personnalisé, puis utilisez une méthode wrapper de fonction avec des paramètres de pointeur. Accédez et modifiez l’état des objets via des paramètres de pointeur pour améliorer la réutilisabilité et la maintenabilité du code.
L'encapsulation est un principe important dans la programmation orientée objet (POO), qui nous permet de lier des données et des méthodes entre elles pour former un objet. Dans le langage Go, les fonctions peuvent être utilisées pour implémenter l'encapsulation.
Tout d'abord, nous devons créer un type personnalisé qui représente l'objet :
type Person struct { name string age int }
Le type Person
définit un objet avec deux champs nom
et âge. Person
类型定义了一个具有两个字段 name
和 age
的对象。
接下来,我们可以创建函数来封装与 Person
类型关联的方法。例如,创建一个获取对象名称的方法:
func (p *Person) GetName() string { return p.name }
注意,方法接收了一个指向对象指针的指针参数 *Person
,因为我们希望能够修改对象的状态。
我们可以在以下示例程序中展示如何使用封装:
package main import "fmt" type Person struct { name string age int } func (p *Person) GetName() string { return p.name } func main() { person := Person{ name: "John Doe", age: 25, } name := person.GetName() fmt.Println("Name:", name) }
在这个示例中:
Person
类型对象 person
。GetName()
Ensuite, nous pouvons créer des fonctions pour encapsuler les méthodes associées au type Person
. Par exemple, créez une méthode qui récupère le nom d'un objet :
Name: John Doe
*Person
qui pointe vers un pointeur vers l'objet, car nous voulons pouvoir modifier l'état de l'objet. Cas pratique
🎜Nous pouvons montrer comment utiliser l'encapsulation dans l'exemple de programme suivant : 🎜rrreee🎜Dans cet exemple : 🎜Person
person
. 🎜GetName()
pour obtenir et imprimer le nom de l'objet. 🎜🎜🎜Le résultat sera : 🎜rrreee🎜Conclusion🎜🎜En utilisant des fonctions, nous pouvons créer des méthodes encapsulées pour les types personnalisés en langage Go. Cela nous permet de contrôler l'accès aux données des objets et d'améliorer la réutilisabilité et la maintenabilité du code. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!