encapsulation java
Spoznajte Encapsulacijo v Javi s primeri, zakaj jo potrebujemo, povezane metode getter in setter:
V tej vadnici bomo razpravljali o drugem konceptu OOP - 'Kapsulacija'. OOP ima štiri stebre, in sicer abstrakcijo, inkapsulacijo, polimorfizem in dedovanje.
Medtem ko se z abstrakcijo končnemu uporabniku izpostavijo le ustrezne podrobnosti, se inkapsulacija ukvarja predvsem z varnostjo podatkov. Za zagotovitev varnosti podatkov enkapsulacija ščiti člane podatkov pred neželenim dostopom z določitvijo modifikatorjev dostopa in podatke tudi združuje v eno enoto.
=> Tukaj si oglejte Perfect Java Training Guide.
Torej, kako lahko definiramo enkapsulacijo v Javi?
Opredelitev enkapsulacije
'Enkapsulacijo v Javi lahko definiramo kot mehanizem, s katerim se podatki in metode, ki delujejo na te podatke, zavijejo v eno samo enoto.'
Kaj se boste naučili:
Kaj je enkapsulacija v Javi
Z enkapsulacijo lahko pred drugimi razredi skrijemo tudi člane podatkov o razredu (spremenljivke). Do teh spremenljivk podatkovnih podatkov je mogoče dostopati posredno z uporabo metod razreda, v katerem so prijavljene. Do metod pa se dostopa z uporabo predmeta tega razreda.
Torej tisto, kar sklepamo iz zgornje definicije, je, da smo spremenljivke podatkovnih članov skrili znotraj razreda in določili tudi modifikatorje dostopa, tako da niso dostopni drugim razredom.
Tako je enkapsulacija tudi neke vrste 'skrivanje podatkov', čeprav bomo kasneje v vadnici videli, da enkapsulacija ni isto kot skrivanje podatkov.

Zgornja slika predstavlja razred, ki je enkapsulacijska enota, ki združuje podatke in metode, ki delujejo na teh podatkih, v eno enoto.
Ker se inkapsulacija večinoma ukvarja s podatki, se to alternativno imenuje »inkapsulacija podatkov«.
Kapsulacijo si lahko predstavljamo kot medicinsko kapsulo. Kot vsi vemo, je zdravilo zaprto v medicinski kapsuli. Podobno so podatki in metode zaprti v eno samo enoto.
Tako enkapsulacija deluje kot zaščitni ščit okoli podatkov in preprečuje nepooblaščen dostop zunanjih podatkov do podatkov. Z drugimi besedami, ščiti občutljive podatke naše aplikacije.
V Javi sta dva koraka za izvedbo inkapsulacije. Sledijo koraki:
- Uporabite modifikator dostopa ‘private’ za deklariranje spremenljivk člana razreda.
- Če želite dostopati do teh spremenljivk zasebnih članov in spremeniti njihove vrednosti, moramo zagotoviti javni način pridobivanja in nastavitve.
Zdaj izvedimo primer enkapsulacije v Javi.
Primer enkapsulacije Java
//Student_Id and name bundled in a unit 'Student' => encapsulation class Student { private int Student_Id; private String name; //getters, setters for Student_Id and name fields. public int getId() { return Student_Id; } public void setId(int s_id) { this.Student_Id = s_id; } public String getname() { return name; } public void setname(String s_name) { this.name = s_name; } } class Main{ public static void main(String() args) { //create an object of Student class Student s=new Student(); //set fields values using setter methods s.setId (27); s.setname('Tom Lee'); //print values using getter methods System.out.println('Student Data:' + '
Student ID:' + s.getId() + ' Student Name:' + s.getname()); } } Izhod:

V zgornjem programu razglasimo razred, ki je enkapsulacijska enota. Ta razred Student je podatke (Student_Id in ime) in metode za branje in nastavitev vrednosti za te člane združil v eno enoto.
Upoštevajte modifikatorje dostopa, povezane s polji članov. Obe polji članov sta zasebni, tako da nista dostopni izven predmeta Student.
Za branje vrednosti teh polj nudimo getters (getId in getname) in metode nastavitve (setId in setname) za nastavitev vrednosti teh metod. To je edini dostop, ki ga imajo, to pa je treba storiti tudi s predmetom predmeta Student.
qtp intervju in vprašanja pdf
Getter in Setter metode
Za izvedbo enkapsulacije v Javi spremenljivke podatkovnih članov razreda naredimo kot zasebne. Zdaj te zasebne spremenljivke niso dostopne ničemur zunaj razreda, vključno s predmetom razreda.
To pomeni, če imamo razred ABC, kot sledi.
razred ABC {
zasebna int starost;
}
DVD ripper za Windows 10 brezplačno prenesete
Ustvarimo objekt razreda ABC, kot sledi:
ABC abc = nov ABC ();
abc.age = 21; // napaka prevajalnika
Torej v zgornji kodi bo dostop do zasebne spremenljivke z uporabo predmeta razreda povzročil napako prevajalnika.
Za dostop do zasebnih spremenljivk in branje njihovih vrednosti ter nastavitev nekaterih novih vrednosti v njih potrebujemo način za to. Tako Java ponuja način dostopa do zasebnih spremenljivk z uporabo metod getter in setter.
Getter in Setters sta javni metodi, ki ju lahko uporabimo za ustvarjanje, spreminjanje, brisanje ali preprosto ogled vrednosti zasebnih spremenljivk.
Spodnji program je primer metod Getter in Setter.
//Account class - private data members bundled with getters and setters class Account { //private data members private long acc_no; private String name,email; private float amount; //public getter and setter methods for each data member public long getAcc_no() { return acc_no; } public void setAcc_no(long acc_no) { this.acc_no = acc_no; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public float getAmount() { return amount; } public void setAmount(float amount) { this.amount = amount; } } public class Main { public static void main(String() args) { //create instance of Account class Account myAcc=new Account(); //set values for data members through setter methods myAcc.setAcc_no(775492842L); myAcc.setName('SoftwareTestingHelp.com'); myAcc.setEmail('sth_account@sth.com'); myAcc.setAmount(25000f); //read data member values through getter methods System.out.println('Account No:' + myAcc.getAcc_no()+' '+'Account Name:' + myAcc.getName()+'
'+'Account holder email:' + myAcc.getEmail()+'
' + 'Amount in Account:' + myAcc.getAmount()); } } Izhod:

Zgornji program ima razred Račun in ima štiri zasebne spremenljivke, povezane z računom. Ker so vsi podatkovni člani zasebni, smo za vsako od teh spremenljivk zagotovili metode pridobivanja in nastavitve.
V glavni metodi beremo in nastavljamo vrednosti za te zasebne spremenljivke z uporabo metod javnega getterja in setterja, do katerih dostopate prek predmeta razreda Račun.
Skrivanje podatkov v Javi
Pogosto uporabljamo enkapsulacijo in skrivanje podatkov med seboj. A oba nista enaka. Invapsulacija Java se ukvarja z združevanjem povezanih podatkov v eno enoto, da se zagotovi boljše upravljanje in varnost podatkov.
Skrivanje podatkov na drugi strani omejuje dostop člana podatkov s skrivanjem podrobnosti o izvedbi. Čeprav enkapsulacija ni ravno skrivanje podatkov, nam ponuja način skrivanja podatkov. Skrivanje podatkov se doseže z modifikatorji dostopa.
Java ponuja štiri modifikatorje dostopa.
- javno: Dostopno vsem.
- zasebno: Dostopno samo znotraj predavanja.
- zaščiteno: Dostopno za paket, ki ga vsebuje, in podrazrede.
- privzeto: Dostopno v paketu.
Enkapsulacija združi podatke v eno enoto, tako da jih na nek način skrije. Poleg tega podatke naredi zasebne in so tako zunanjemu svetu nedostopni. Da bi podatke naredili zasebne, uporabljamo modifikator dostopa private, ki je koncept skrivanja podatkov.
Hkrati se končnemu uporabniku zagotovijo le ustrezne podrobnosti, ne da bi se izpostavile podrobnosti izvedbe, kar je definicija abstrakcije. Tako lahko na enkapsulacijo gledamo kot na kombinacijo abstrakcije in skrivanja podatkov.
Zakaj potrebujemo kapsulacijo
Obstaja več razlogov, zakaj je kapsulacija v Javi bistvena:
- Enkapsulacija nam omogoča spreminjanje kode ali dela kode, ne da bi morali spreminjati druge funkcije ali kodo.
- Enkapsulacija nadzoruje način dostopa do podatkov.
- Kodo lahko spremenimo glede na zahteve z uporabo enkapsulacije.
- Z enkapsulacijo so naše aplikacije enostavnejše.
Pogosto zastavljena vprašanja
V # 1) Zakaj se Enkapsulacija uporablja v Javi?
Odgovor: Kapsulacija v Javi je večinoma koristna za skrivanje podatkov. Z drugimi besedami, odločiti se o dostopu do podatkov, kdo lahko dostopa do njih in kdo ne.
V # 2) Kaj je kapsulacija v OOP?
Odgovor: Enkapsulacija je eden pomembnih stebrov objektno usmerjenega programskega jezika in se ukvarja z združevanjem podatkov in metod, ki delujejo na teh podatkih, v eno enoto. Na primer, razred v Javi je zaprta struktura. Enkapsulacija obravnava tudi odločitve glede zagotavljanja dostopa do podatkov.
V # 3) Kakšna je prednost enkapsulacije v Javi?
Odgovor: Glavna prednost enkapsulacije v Javi je skrivanje podatkov. Z enkapsulacijo lahko programerju omogočimo, da se odloči o dostopu do podatkov in metodah, ki delujejo na teh podatkih. Na primer, če želimo, da določen del podatkov ni dostopen nikomur zunaj razreda, potem te podatke naredimo zasebne.
V # 4) Kaj je postopek inkapsulacije?
Odgovor: Enkapsulacija je postopek zbiranja podatkov iz ene oblike ali protokola (v omrežnem smislu) in njihovega prevajanja ali preoblikovanja v drugo obliko ali protokol, tako da so podatki dostopni prek aplikacij ali omrežja in so hkrati zaščiteni.
V # 5) Kateri je zadnji korak v kapsulaciji podatkov?
Odgovor: Zadnji korak v enkapsulaciji je spreminjanje uporabniških informacij v enakovredne podatke. Nato se ti podatki spremenijo v segmente, ki se nato pretvorijo v podatkovne pakete. Podatkovni paketi so postavljeni v logični okvir, ki ga je mogoče prenašati sem in tja v programskem okolju
Zaključek
S tem je zaključena naša vadnica o enkapsulaciji v Javi. Inkapsulacija je tehnika združevanja spremenljivk članov in metod, ki delujejo na teh članih podatkov, v eno enoto. Razred v Javi je klasičen primer enkapsulacije, saj podatke in metode zavije v eno enoto.
Java doseže izvedbo enkapsulacije tako, da postavi vse člane podatkov zasebnimi in nato zagotovi javne metode getter in setter, da lahko beremo vrednosti zasebnih spremenljivk in za te spremenljivke nastavljamo nove vrednosti.
=> Obiščite tukaj za ekskluzivno serijo vadnic Java.
Priporočeno branje
- JAVA Vadnica za začetnike: 100+ praktičnih Javnih video vadnic
- TreeMap v Javi - Vadnica z primeri Java TreeMap
- Dvojna vadnica Java s primeri programiranja
- Vadnica Java Float s primeri programiranja
- Java Reverse String: Vadnica s primeri programiranja
- Java Enum: Vadnica za naštevanje Java s primeri
- Java Integer in Java BigInteger Class z primeri
- Java String vsebuje () Vadnico metode s primeri