logo

Enkapsulacija u Javi

Enkapsulacija znači kombiniranje podataka i funkcija koje rade na tim podacima u jednu jedinicu poput klase. U Objektno orijentirano programiranje pomaže da stvari budu organizirane i sigurne.

  • Klasa može sakriti implementacijski dio i otkriti samo funkcionalnosti koje zahtijevaju druge klase. Stavljanjem podataka klase i metoda u privatne prikaze ili implementacije kasnije se mogu promijeniti bez utjecaja na kodove koji koriste ovu klasu.
  • Pomaže u boljem održavanju, čitljivosti i upotrebljivosti. Također pomaže u održavanju integriteta podataka dopuštajući provjeru valjanosti i kontrolu nad vrijednostima dodijeljenim varijablama.
Enkapsulacija' title=Enkapsulacija

Implementacija enkapsulacije u Javi

  • Proglasi podatke privatnim: Sakrijte podatke razreda tako da im se ne može pristupiti izravno izvan razreda.
  • Koristite getere i postavljače: Držite varijable privatnima i osigurajte javne getter i setter metode za kontrolirani pristup i sigurnu modifikaciju često uz provjeru valjanosti.
  • Primijenite odgovarajuće modifikatore pristupa: Koristite privatno za skrivanje podataka i javno za metode koje omogućuju pristup.
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());  } } 

Izlaz
Name=> Geek 

Obrazloženje: U gornjem primjeru koristimo enkapsulaciju i getter ( getName) i postavljač ( setName) metoda koja se koristi za prikaz i izmjenu privatnih podataka. Ovaj mehanizam enkapsulacije štiti unutarnje stanje objekta Programmer i omogućuje bolju kontrolu i fleksibilnost u načinu na koji se atributu imena pristupa i mijenja.

strojopis prekidač

Prednosti enkapsulacije

Prednosti enkapsulacije navedene su u nastavku:



  • Skrivanje podataka: Enkapsulacija ograničava izravan pristup varijablama klase štiteći osjetljive podatke od neovlaštenog pristupa.
  • Poboljšana održivost: Promjene unutarnje implementacije mogu se napraviti bez utjecaja na vanjski kod koji koristi klasu.
  • Poboljšana sigurnost: Enkapsulacija omogućuje provjeru valjanosti i kontrolu nad podacima sprječavajući postavljanje nevaljanih ili štetnih vrijednosti.
  • Mogućnost ponovne upotrebe koda: Enkapsulirane klase mogu se ponovno koristiti u različitim programima bez izlaganja unutarnje logike.
  • Bolja modularnost: Enkapsulacija promiče organizirani modularni kod držeći podatke i metode zajedno unutar klase.

Nedostaci enkapsulacije

Nedostaci enkapsulacije navedeni su u nastavku:

  • Povećana složenost koda: Pisanje getter i setter metoda za svaku varijablu može učiniti kod duljim i malo složenijim.
  • Dodatni troškovi izvedbe: Pristup podacima putem metoda umjesto izravnog može dovesti do manjeg troška performansi, posebno u aplikacijama kritičnim za performanse.
  • Manja fleksibilnost u nekim slučajevima: Pretjerano ograničavanje pristupa članovima klase može ograničiti sposobnost drugih klasa da prošire ili učinkovito koriste klasu.
Napravi kviz