![Citation](https://forum.developpez.be/images/misc/quote_icon.png)
Envoyé par
verbose
En effet, il s'agit d'une question de philosophie
L'encapsulation est un des piliers de la programmation orientée objet. Elle consiste à réduire la visibilité des attributs afin d'empêcher que ceux-ci ne soient accessibles à tord et à travers.
Ca marche bien avec les types primitifs (int, boolean...) et la classe String.
1 2 3 4 5 6 7 8 9 10 11
| class A {
private List zeList;
public A() {
zeList = new ArrayList();
.... // là on insère des valeurs dans la liste...
}
public List getList() {
return this.zeList;
}
} |
Je peux très bien faire:
new A().getList().removeAll();
Et là, tous les objets de la liste sont supprimés alors que naïvement on pense que les données sont sécurisées.
A méditer.
Partager