Maison >développement back-end >C++ >Pourquoi puis-je accéder aux champs privés d'un autre objet de la même classe ?
Les principes de la POO appliquent l'encapsulation en limitant l'accès aux membres de la classe privée pour empêcher les modifications non autorisées. Cependant, dans le code suivant, pourquoi est-il possible d'accéder au champ de compte d'un autre objet Personne malgré sa visibilité privée ?
class Person { private BankAccount account; Person(BankAccount account) { this.account = account; } public Person someMethod(Person person) { // Why is accessing the private field possible? BankAccount a = person.account; } }
Contraire Conformément aux attentes en matière d'accès au niveau objet, les champs privés en Java ont un accès au niveau classe. Cette conception découle des raisons suivantes :
Conclusion :
Accès au niveau de la classe pour les champs privés est un choix de conception intentionnel qui renforce l'encapsulation, garantit l'indépendance de l'implémentation et facilite les interactions entre les objets au sein d'une même classe. Même si cela peut sembler contre-intuitif, cette conception est essentielle pour maintenir l'intégrité et la flexibilité de la programmation orientée objet.
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!