Vidéo: TUTO C++ - Mise en oeuvre d'une classe et principe d'encapsulation 2024
L'un des problèmes qui a tendance à perturber de nombreux nouveaux développeurs Java (ainsi que certains développeurs Java expérimentés) propriétés en Java. Certaines langues ont un mécanisme formel pour travailler avec les propriétés, mais Java ne fournit pas ce mécanisme.
En outre, il existe un certain niveau de confusion concernant la terminologie utilisée par Java pour les éléments de programme spécifiques liés aux propriétés. Cette section utilise un ensemble spécifique de termes qui reflètent la terminologie utilisée par la majorité des développeurs Java, mais vous devriez vous attendre à voir d'autres usages lorsque vous regardez en ligne.
Une propriété est une valeur à laquelle vous pouvez accéder en tant que partie de la classe ou de l'objet créé à partir de la classe. Vous utilisez des propriétés pour fournir l'accès à une variable globale, également appelée champ . La meilleure pratique consiste à toujours rendre les champs privés, puis à utiliser des méthodes getter et setter spéciales pour y accéder. La combinaison de champ, getter et setter est une propriété de Java. Voici un exemple typique qui utilise un int nommé MyInt.
Dans cet exemple, le code déclare une variable privée, MyInt, et lui affecte une valeur de 0. getter, getMyInt (), fournit la valeur actuelle de MyInt à l'appelant, tandis que le setter, setMyInt (), permet à l'appelant de modifier la valeur de MyInt.
Un champ est une sorte de variable globale qui contient des données gérées par la classe ou l'objet. Certains développeurs étendent le terme
champ pour inclure toutes sortes d'autres significations, mais ce livre utilise le champ pour désigner spécifiquement une variable accessible globalement. Les getters
et setters sont des méthodes spéciales qui permettent d'accéder aux champs. L'utilisation de getters et de setters vous aide à contrôler l'accès aux champs et réduit les risques d'utilisation incorrecte du champ. Pour protéger un champ contre les dommages, tels que la réception de valeurs de données incorrectes, vous devez le déclarer comme privé et faire appel aux getters et aux setters pour y accéder. Les getters et setters doivent fournir toutes les vérifications nécessaires pour s'assurer que l'appelant interagit correctement avec le champ privé.