Encapsulació en Java

Encapsulació en Java

L'encapsulació significa combinar dades i les funcions que funcionen amb aquestes dades en una sola unitat com una classe. En Programació Orientada a Objectes ajuda a mantenir les coses organitzades i segures.

  • Una classe pot amagar la part d'implementació i revela només les funcionalitats requerides per altres classes. En fer que les dades i els mètodes de classe siguin privades, les representacions o implementacions es poden canviar més tard sense afectar els codis que utilitza aquesta classe.
  • Ajuda a una millor llegibilitat i usabilitat del manteniment. També ajuda a mantenir la integritat de les dades permetent la validació i el control dels valors assignats a les variables.
EncapsulacióEncapsulació

Implementació de l'encapsulació en Java

  • Declarar les dades com a privades: Amaga les dades de la classe perquè no es pugui accedir directament des de fora de la classe.
  • Utilitzeu getters i setters: Mantingueu les variables privades i proporcioneu mètodes públics d'obtenció i configuració d'accés controlat i modificació segura sovint amb validació.
  • Apliqueu els modificadors d'accés adequats: Utilitzeu privat per amagar dades i públic per als mètodes que proporcionen accés.
Java
   class   Programmer     {      private     String     name  ;      // Getter method used to get the data      public     String     getName  ()     {     return     name  ;     }      // Setter method is used to set or modify the data      public     void     setName  (  String     name  )     {          this  .  name     =     name  ;      }   }   public     class   Geeks     {      public     static     void     main  (  String  []     args  ){          Programmer     p     =     new     Programmer  ();      p  .  setName  (  'Geek'  );      System  .  out  .  println  (  'Name=> '     +     p  .  getName  ());      }   }   

Sortida
Name=> Geek  

Explicació: A l'exemple anterior utilitzem l'encapsulació i fem servir getter ( getName) i posador ( setName) mètode que s'utilitzen per mostrar i modificar les dades privades. Aquest mecanisme d'encapsulació protegeix l'estat intern de l'objecte Programador i permet un millor control i flexibilitat en com s'accedeix i modifica l'atribut de nom.

Avantatges de l'encapsulació

Els avantatges de l'encapsulació es detallen a continuació:

  • Ocultació de dades: L'encapsulació restringeix l'accés directe a les variables de classe protegint les dades sensibles de l'accés no autoritzat.
  • Mantenibilitat millorada: Els canvis a la implementació interna es poden fer sense afectar el codi extern que utilitza la classe.
  • Seguretat millorada: L'encapsulació permet la validació i el control de les dades evitant que s'estableixin valors no vàlids o nocius.
  • Reutilitzabilitat del codi: Les classes encapsulades es poden reutilitzar en diferents programes sense exposar la lògica interna.
  • Millor modularitat: L'encapsulació promou el codi modular organitzat mantenint les dades i els mètodes junts dins d'una classe.

Inconvenients de l'encapsulació

Els desavantatges de l'encapsulació s'enumeren a continuació:

  • Augment de la complexitat del codi: Escriure mètodes getter i setter per a cada variable pot fer que el codi sigui més llarg i una mica més complex.
  • Despeses generals de rendiment: L'accés a les dades mitjançant mètodes en lloc de directament pot introduir un cost de rendiment menor, especialment en aplicacions crítiques de rendiment.
  • Menys flexibilitat en alguns casos: L'accés excessiu als membres de la classe pot limitar la capacitat d'altres classes per ampliar o utilitzar la classe de manera eficient.
Crea un qüestionari