Incapsulamento

Riassunto

L'incapsulamento è un principio dell'Orientamento agli Oggetti (OOP) che consiste nell'incapsulare i dettagli di implementazione di un oggetto, proteggendo i suoi dati interni e esponendo solo le funzionalità attraverso interfacce ben definite.

Definizione:

L'incapsulamento implica il raggruppamento dei dati e dei metodi correlati in una singola unità, nota come classe. Questo permette di nascondere i dettagli di implementazione, rendendo gli attributi privati e fornendo metodi pubblici per accedere e manipolare tali attributi.

Vantaggi:

  • Protezione dei dati: Gli attributi privati non sono accessibili dall'esterno della classe, garantendo che i dati siano protetti da accessi non autorizzati o modifiche accidentali.
  • Semplificazione dell'utilizzo: Esponendo solo metodi pubblici, l'incapsulamento semplifica l'utilizzo di un oggetto, riducendo la complessità e nascondendo i dettagli di implementazione.
  • Manutenibilità: Incapsulando i dettagli di implementazione, è possibile modificare l'implementazione interna di una classe senza influenzare direttamente il codice esterno che utilizza l'oggetto.

Esempio:

Ecco un esempio di come utilizzare l'incapsulamento in Java:

public class Persona {
      private String nome;
      private int eta;
      
      // Costruttore
      public Persona(String nome, int eta) {
          this.nome = nome;
          this.eta = eta;
      }
      
      // Metodi pubblici per accedere e modificare gli attributi privati
      public String getNome() {
          return nome;
      }
      
      public int getEta() {
          return eta;
      }
      
      public void setEta(int eta) {
          this.eta = eta;
      }
  }

In questo esempio, la classe Persona incapsula i dettagli di implementazione dei suoi attributi (nome e età) rendendoli privati e fornendo metodi pubblici per accedere e modificare tali attributi.