Incapsulamento nel Java
โก Riepilogo intelligente
Incapsulamento nel Java ร un meccanismo che raggruppa variabili e metodi in un'unica unitร , nascondendo al contempo i dettagli interni. Protegge i dati di un oggetto utilizzando campi privati โโe un accesso controllato tramite metodi getter e setter pubblici.

In cosa consiste l'incapsulamento Java?
Incapsulamento nel Java รจ un meccanismo per racchiudere variabili (dati) e metodi (codice) insieme come una singola unitร . ร il processo di nascondere i dettagli informativi e proteggere i dati e il comportamento dell'oggetto. ร uno dei quattro importanti concetti OOP. La classe encapsulate รจ facile da testare, quindi รจ anche migliore per i test unitari.
Clicchi Qui. se il video non รจ accessibile
Impara l'incapsulamento in Java con l'esempio
Per comprendere in dettaglio cos'รจ l'incapsulamento, si consideri la seguente classe di conto bancario con i metodi di deposito e di visualizzazione del saldo
class Account { private int account_number; private int account_balance; public void show Data() { // code to show data } public void deposit(int a) { if (a < 0) { // show error } else account_balance = account_balance + a; } }
Supponiamo che un hacker sia riuscito ad accedere al codice del tuo conto bancario. Ora, cerca di depositare l'importo -100 sul tuo conto in due modi. Vediamo il suo primo metodo o approccio.
Approccio 1: Tenta di depositare un importo non valido (diciamo -100) sul tuo conto bancario manipolando il codice.
Ora, la domanda รจ: E 'possibile? Indaghiamo. Di solito, una variabile in una classe รจ impostata come "privata" come mostrato di seguito. ร possibile accedervi solo con i metodi definiti nella classe. Nessun'altra classe o oggetto puรฒ accedervi.
Se un membro dati รจ privato, significa che รจ possibile accedervi solo all'interno della stessa classe. Nessuna classe esterna puรฒ accedere al membro dati privato o alla variabile di un'altra classe. Quindi nel nostro caso l'hacker non puรฒ depositare l'importo -100 sul tuo account.
Approccio 2: Il primo tentativo dell'hacker di depositare l'importo non รจ andato a buon fine. Successivamente, ha provato a depositare un importo di -100 utilizzando il metodo "deposito".
Ma l'implementazione del metodo ha un controllo per i valori negativi. Quindi anche il secondo approccio fallisce.
Pertanto, non esponi mai i tuoi dati a una parte esterna. Ciรฒ rende la tua applicazione sicura.
L'intero codice puรฒ essere pensato come una capsula, e si puรฒ comunicare solo attraverso i messaggi. Da qui il nome incapsulamento.
Dati nascosti Java
Dati nascosti Java nasconde le variabili di una classe ad altre classi. ร possibile accedervi solo tramite il metodo della classe corrente. Nasconde i dettagli di implementazione agli utenti. Ma piรน che nascondere i dati, รจ pensato per una migliore gestione o raggruppamentoping di dati correlati. Per ottenere un grado minore di incapsulamento in Java, puoi usare modificatori come "protected" o "public". Con l'incapsulamento, gli sviluppatori possono modificare facilmente una parte del codice senza influenzare le altre.
Entrano Getter e Setter Java
Entrano Getter e Setter Java sono due metodi convenzionali utilizzati per recuperare e aggiornare i valori di una variabile. Vengono utilizzati principalmente per creare, modificare, eliminare e visualizzare i valori delle variabili. Il metodo setter viene utilizzato per aggiornare i valori e il metodo getter viene utilizzato per leggere o recuperare i valori. Sono anche conosciuti come accessori e mutatori.
Il codice seguente รจ un esempio dei metodi getter e setter:
class Account{ private int account_number; private int account_balance; // getter method public int getBalance() { return this.account_balance; } // setter method public void setNumber(int num) { this.account_number = num; } }
Nell'esempio precedente, il metodo getBalance() รจ il metodo getter che legge il valore della variabile account_balance e il metodo setNumber() รจ il metodo setter che imposta o aggiorna il valore per la variabile account_number.
Abstraczione vs. incapsulamento
Spesso l'incapsulamento viene frainteso Abstracproduzione. Studiamo-
- L'incapsulamento riguarda piรน il "come" ottenere una funzionalitร
- AbstracLa lezione riguarda piรน "cosa" una classe puรฒ fare.
Un semplice esempio per comprendere questa differenza รจ un telefono cellulare. Dove la complessa logica del circuito stampato รจ incapsulata in un touchscreen e l'interfaccia รจ fornita per assorbiretract lo spiega.
Vantaggi dell'incapsulamento in Java
- L'incapsulamento vincola i dati con le relative funzionalitร . Qui le funzionalitร significano โmetodiโ e i dati significano โvariabiliโ
- Quindi manteniamo variabili e metodi in un unico posto. Quel posto รจ โdi classeโ. La classe รจ la base per l'incapsulamento.
- Con Java Incapsulamento: puoi nascondere (limitare l'accesso) ai dati critici nel tuo codice, migliorando la sicurezza
- Come abbiamo discusso in precedenza, se un membro dati รจ dichiarato "privato", allora รจ possibile accedervi solo all'interno della stessa classe. Nessuna classe esterna puรฒ accedere al membro dati (variabile) di un'altra classe.
- Tuttavia, se รจ necessario accedere a queste variabili, รจ necessario utilizzare โgetterโ e โsetterโ pubblici metodi.






