encapsulation java
Dozviete sa viac o Zapuzdrení v Jave s príkladmi, prečo to potrebujeme, s príslušnými metódami getra a setra:
V tomto výučbe sa budeme zaoberať ďalším konceptom OOP - „zapuzdrenie“. OOP má štyri piliere, a to abstrakciu, zapuzdrenie, polymorfizmus a dedičstvo.
Zatiaľ čo sa abstrakcia používa na to, aby sa koncovému používateľovi sprístupnili iba relevantné podrobnosti, zapuzdrenie sa zaoberá hlavne bezpečnosťou údajov. Pri zaistení bezpečnosti údajov zapuzdrenie chráni dátových členov pred nežiaducim prístupom zadaním modifikátorov prístupu a tiež zhromažďuje údaje do jednej jednotky.
=> Vyskúšajte tu Sprievodcu dokonalým školením Java.
Ako teda môžeme definovať zapuzdrenie v Jave?
Definícia zapuzdrenia
„Zapuzdrenie v prostredí Java možno definovať ako mechanizmus, pomocou ktorého sú údaje a metódy, ktoré na nich pracujú, zabalené do jednej jednotky.“
Čo sa dozviete:
Čo je zapuzdrenie v prostredí Java
Pomocou zapuzdrenia môžeme tiež skryť dátové členy triedy (premenné) pred ostatnými triedami. K týmto premenným údajových členov je možné získať nepriamy prístup pomocou metód triedy, v ktorej sú deklarované. K metódam sa zase pristupuje pomocou objektu tejto triedy.
Z vyššie uvedenej definície teda vyvodzujeme záver, že sme premenné údajových členov skryli vo vnútri triedy a zadali sme aj modifikátory prístupu, aby neboli prístupné pre ostatné triedy.
Preto je zapuzdrenie tiež druhom „skrývania údajov“, aj keď neskôr v tutoriále uvidíme, že zapuzdrenie nie je to isté ako skrytie údajov.
Vyššie uvedený obrázok predstavuje triedu, ktorá je zapuzdrovacou jednotkou, ktorá zhromažďuje údaje a metódy fungujúce na týchto údajoch do jednej jednotky.
Pretože zapuzdrenie sa zaoberá hlavne údajmi, nazýva sa to alternatívne „zapuzdrenie údajov“.
Zapuzdrenie si môžeme predstaviť ako lekársku kapsulu. Ako všetci vieme, liek je uzavretý vo vnútri lekárskej kapsuly. Podobne sú údaje a metódy uzavreté v jednej jednotke.
ako otvárať súbory apk v systéme Windows -
Zapuzdrenie teda funguje ako ochranný štít okolo údajov a zabraňuje ich neoprávnenému prístupu vonkajším svetom. Inými slovami, chráni citlivé údaje našej aplikácie.
V prostredí Java existujú dva kroky na implementáciu zapuzdrenia. Nasledujú kroky:
najlepší rámec na testovanie jednotiek pre javu
- Na deklaráciu premenných členov triedy použite modifikátor prístupu „private“.
- Aby sme mohli pristupovať k týmto súkromným členským premenným a meniť ich hodnoty, musíme poskytnúť verejné metódy getra a settera.
Poďme si teraz implementovať príklad zapuzdrenia v Jave.
Príklad zapuzdrenia 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()); } }
Výkon:
Vo vyššie uvedenom programe deklarujeme triedu, ktorá je zapuzdrovacou jednotkou. Táto trieda Student zhromaždila údaje (Student_Id a názov) a metódy na čítanie a nastavenie hodnôt pre týchto členov do jednej jednotky.
Všimnite si modifikátory prístupu spojené s poliami členov. Obe polia členov sú súkromné, takže nie sú prístupné mimo triedy Student.
Poskytujeme vyhľadávače (getId a getname) na čítanie hodnôt týchto polí a metódy setter (setId a setname) na nastavenie hodnôt pre tieto metódy. Toto je jediný prístup, ktorý majú, a ktorý by sa tiež mal robiť pomocou objektu triedy Student.
Metódy getra a setra
Aby sme implementovali zapuzdrenie v Jave, premenujeme dátové členské premenné triedy na súkromné. Teraz tieto súkromné premenné nie sú prístupné pre nič mimo triedy vrátane objektu triedy.
To znamená, ak máme triedu ABC nasledovne.
trieda ABC {
súkromný vek;
}
Vytvorme objekt triedy ABC nasledovne:
ABC abc = nové ABC ();
abc.age = 21; // chyba kompilátora
Takže vo vyššie uvedenom kóde bude mať prístup k súkromnej premennej pomocou objektu triedy za následok chybu kompilátora.
Aby sme mohli pristupovať k súkromným premenným a čítať ich hodnoty a nastavovať v nich nové hodnoty, musíme to nejako urobiť. Java teda poskytuje spôsob prístupu k súkromným premenným pomocou metód getra a setra.
Getter a Setter sú verejné metódy, ktoré môžeme použiť na vytvorenie, úpravu, odstránenie alebo jednoduché zobrazenie hodnôt súkromných premenných.
Nasledujúci program je príkladom metód Getter a 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()); } }
Výkon:
Vyššie uvedený program má triedu Účet a má štyri súkromné premenné súvisiace s účtom. Pretože sú všetky dátové členy súkromné, poskytli sme pre každú z týchto premenných metódy getra a setra.
sql interview otázky a odpovede pre nováčikov
V hlavnej metóde čítame a nastavujeme hodnoty pre tieto súkromné premenné pomocou metód verejného getra a setra prístupných cez objekt triedy Účet.
Skrývanie údajov v Jave
Často používame zapuzdrenie a skrytie údajov zameniteľne. Ale obe nie sú rovnaké. Zapuzdrenie Java sa zaoberá zoskupovaním súvisiacich údajov do jednej jednotky, aby sa zabezpečila lepšia správa a bezpečnosť údajov.
Skrývanie údajov na druhej strane obmedzuje prístup dátového člena skrytím podrobností implementácie. Aj keď zapuzdrenie nie je presne skrývanie údajov, poskytuje nám spôsob skrývania údajov. Skrývanie údajov sa dosahuje pomocou modifikátorov prístupu.
Java poskytuje štyri modifikátory prístupu.
- verejné: Prístupné pre všetkých.
- súkromné: Prístupné iba v rámci triedy.
- chránené: Prístupné pre obsahujúci balík a podtriedy.
- predvolené: Prístupné v rámci balíka.
Zapuzdrenie zoskupuje údaje do jednej jednotky, takže ich svojím spôsobom skryje. Dáta sú tiež súkromné a sú tak neprístupné vonkajšiemu svetu. Na zabezpečenie súkromia údajov používame modifikátor prístupu súkromný, čo je koncept skrývania údajov.
Zároveň sú koncovému používateľovi poskytnuté iba príslušné podrobnosti, bez toho, aby boli odhalené podrobnosti implementácie, čo je definícia abstrakcie. Môžeme teda vidieť zapuzdrenie ako kombináciu abstrakcie aj skrývania údajov.
Prečo potrebujeme zapuzdrenie
Existuje niekoľko dôvodov, prečo je zapuzdrenie v jazyku Java nevyhnutné:
- Zapuzdrenie nám umožňuje upraviť kód alebo jeho časť bez toho, aby sme museli meniť akékoľvek ďalšie funkcie alebo kód.
- Zapuzdrenie riadi náš prístup k údajom.
- Na základe požiadaviek môžeme kód upraviť pomocou zapuzdrenia.
- Vďaka zapuzdreniu sú naše aplikácie jednoduchšie.
často kladené otázky
Otázka 1) Prečo sa v Jave používa zapuzdrenie?
Odpoveď: Zapuzdrenie v prostredí Java je väčšinou užitočné na skrytie údajov. Alebo inými slovami, rozhodnúť o prístupe k údajom o tom, kto k nim má prístup a kto nie.
Otázka 2) Čo je zapuzdrenie v OOP?
Odpoveď: Zapuzdrenie je jedným z dôležitých pilierov objektovo orientovaného programovacieho jazyka a zaoberá sa zhromažďovaním údajov a metód fungujúcich na týchto údajoch do jednej jednotky. Napríklad, trieda v Jave je zapuzdrená štruktúra. Zapuzdrenie sa zaoberá aj rozhodnutiami týkajúcimi sa poskytovania prístupu k údajom.
Otázka 3) Aká je výhoda zapuzdrenia v Jave?
Odpoveď: Hlavnou výhodou zapuzdrenia v Jave je skrývanie údajov. Pomocou zapuzdrenia môžeme programátorovi umožniť rozhodnúť sa o prístupe k údajom a metódam, ktoré na týchto údajoch pracujú. Napríklad, ak chceme, aby bola konkrétna časť údajov neprístupná pre kohokoľvek mimo triedy, urobíme tieto údaje súkromnými.
Otázka č. 4) Čo je proces zapuzdrenia?
Odpoveď: Zapuzdrenie je proces zhromažďovania údajov z jedného formátu alebo protokolu (z hľadiska siete) a ich preklad alebo preformátovanie do iného formátu alebo protokolu, aby boli údaje prístupné v rámci všetkých aplikácií alebo siete a aby boli súčasne chránené.
Otázka č. 5) Aký je posledný krok pri zapuzdrovaní údajov?
Odpoveď: Posledným krokom zapuzdrenia je zmena informácií o používateľovi na ekvivalentné údaje. Potom sa tieto údaje zmenia na segmenty, ktoré sa ďalej transformujú na dátové pakety. Dátové pakety sú umiestnené v logickom rámci, ktorý je možné prenášať tam a späť v softvérovom prostredí
Záver
Týmto končí náš návod na Zapuzdrenie v Jave. Zapuzdrenie je technika združovania členských premenných a metód prevádzkovaných na týchto dátových členoch do jednej jednotky. Trieda v Jave je klasickým príkladom zapuzdrenia, pretože obaľuje údaje a metódy do jednej jednotky.
Java dosahuje implementáciu zapuzdrenia tým, že všetky dátové členy robí súkromnými a potom poskytuje metódy getra a setra, ktoré sú verejné, aby sme mohli čítať hodnoty súkromných premenných a nastavovať nové hodnoty pre tieto premenné.
=> Navštívte tu sériu exkluzívnych výukových programov Java.
Odporúčané čítanie
- Výukový program JAVA pre začiatočníkov: viac ako 100 praktických výučbových programov Java Video
- TreeMap In Java - návod s príkladmi Java TreeMap
- Výukový program Java s príkladmi programovania
- Výukový program Java Float s príkladmi programovania
- Reverzný reťazec Java: Výukový program s príkladmi programovania
- Java Enum: Výukový program Java Enumeration s príkladmi
- Celé číslo Java a trieda Java BigInteger s príkladmi
- Java String obsahuje () Výukový program metód s príkladmi