- Auteur

- Nom
- Nelson Silva
- Social
Introduction
En Java, l'encapsulation est l'un des piliers fondamentaux de la programmation orientée objet. Grâce aux propriétés, en utilisant les méthodes getter et setter, ce pilier prend forme concrète. Ces fonctions permettent un contrôle fin sur la façon dont les données d'un objet sont accédées et modifiées.
- Pourquoi utiliser les Propriétés ?
- Comment Implémenter
- Bonnes Pratiques lors de l'utilisation des Propriétés
- Exemple Pratique
- Conseils Supplémentaires
Pourquoi utiliser les Propriétés ?
1. Contrôle sur les données
Il est possible de valider ou de modifier les données avant qu'elles ne soient stockées ou retournées.
2. Flexibilité
Des modifications internes aux méthodes getter et setter peuvent être effectuées sans changer la façon dont un objet est utilisé en externe.
3. Sécurité
Limite l'accès direct aux champs de données, garantissant leur intégrité.
Comment Implémenter
Une implémentation courante consiste à déclarer un champ privé avec des méthodes publiques pour obtenir (get) et définir (set) les valeurs.
public class Exemple {
private String nom;
// Getter
public String getNom() {
return nom;
}
// Setter
public void setNom(String nom) {
if(nom != null && !nom.trim().isEmpty()) {
this.nom = nom;
} else {
throw new IllegalArgumentException("Nom invalide");
}
}
}
Bonnes Pratiques lors de l'utilisation des Propriétés
- Validation des Données : Validez toujours les données dans la méthode setter avant de les affecter au champ.
- Encapsulation Cohérente : Évitez d'exposer les champs directement. Utilisez des getters et des setters.
- Documentation : Documentez la fonction et les contraintes de chaque propriété.
- Conventions de Nommage : Utilisez des conventions de nommage cohérentes pour les propriétés. En général, on utilise des méthodes commençant par "get" et "set".
Exemple Pratique
Voyons un exemple dans lequel nous implémentons une classe Propriétés représentant une personne avec un prénom, un nom de famille et un âge.
package com.caffeinealgorithm.programaremjava;
public class Propriétés {
private String prénom = "", nomDeFamille = "";
private int âge = 28;
public void setPrénom(String prénom) {
if (prénom != "")
this.prénom = prénom;
else
System.out.println("La chaîne du prénom ne peut pas être vide.");
}
public void setNomDeFamille(String nomDeFamille) {
if (nomDeFamille != "")
this.nomDeFamille = nomDeFamille;
else
System.out.println("La chaîne du nom de famille ne peut pas être vide.");
}
public int getÂge() {
return âge;
}
public void informations() {
System.out.printf("Nom : %s %s\n", prénom, nomDeFamille);
}
}
Conseils Supplémentaires
- Immuabilité : Dans certains scénarios, il peut être avantageux de créer des propriétés en lecture seule, renforçant ainsi le concept d'immuabilité.
- Performance : Faites attention lors de l'implémentation d'une logique complexe dans les getters et setters, car cela peut impacter les performances.
- Propriétés Calculées : Au-delà du simple retour d'un champ, les getters peuvent être utilisés pour calculer et retourner une valeur basée sur plusieurs champs.
Conclusion
Les propriétés, lorsqu'elles sont bien utilisées, enrichissent le code en le rendant sûr, flexible et facile à maintenir. En Java, les méthodes getter et setter sont la façon standard d'implémenter cette fonctionnalité. En les maîtrisant, vous garantissez robustesse et clarté dans vos applications.