encapsulation java
Lees meer over Encapsulation in Java met voorbeelden, waarom we het nodig hebben, bijbehorende getter- en setter-methoden:
In deze tutorial zullen we een ander OOP-concept bespreken - 'Inkapseling'. OOP heeft vier pijlers, namelijk abstractie, inkapseling, polymorfisme en overerving.
Terwijl abstractie wordt gebruikt om alleen de relevante details aan de eindgebruiker te tonen, heeft inkapseling voornamelijk betrekking op gegevensbeveiliging. Om de gegevensbeveiliging te waarborgen, beschermt inkapseling de gegevensleden tegen ongewenste toegang door toegangsmodificatoren te specificeren en bundelt de gegevens ook in een enkele eenheid.
Bekijk hier de perfecte Java-trainingsgids.
Dus hoe kunnen we inkapseling in Java definiëren?
Definitie van inkapseling
'Inkapseling in Java kan worden gedefinieerd als een mechanisme waarmee de gegevens en de methoden die aan die gegevens werken, worden verpakt om een enkele eenheid te vormen.'
Wat je leert:
Wat is inkapseling in Java
Door inkapseling te gebruiken, kunnen we ook de groepsgegevensleden (variabelen) verbergen voor de andere klassen. Deze variabelen van gegevenslid kunnen indirect worden benaderd met behulp van methoden van de klasse waarin ze zijn gedeclareerd. De methoden worden op hun beurt benaderd met behulp van het object van die klasse.
Dus wat we concluderen uit de bovenstaande definitie is dat we de variabelen van het gegevenslid in een klasse hebben verborgen en ook de toegangsmodificatoren hebben gespecificeerd, zodat ze niet toegankelijk zijn voor de andere klassen.
Inkapseling is dus ook een soort 'gegevens verbergen', hoewel we later in de tutorial zullen zien dat inkapseling niet hetzelfde is als gegevens verbergen.
De bovenstaande afbeelding vertegenwoordigt een klasse die een inkapselingseenheid is die de gegevens en methoden die op deze gegevens werken, bundelt in een enkele eenheid.
Aangezien inkapseling voornamelijk gegevens betreft, wordt het ook wel 'gegevensinkapseling' genoemd.
We kunnen inkapseling visualiseren als een medische capsule. Zoals we allemaal weten, zit het medicijn in een medische capsule. Evenzo zijn gegevens en methoden ingekapseld in een enkele eenheid.
Inkapseling fungeert dus als een beschermend schild rond de gegevens en voorkomt dat de gegevens ongeautoriseerd toegankelijk zijn voor de buitenwereld. Met andere woorden, het beschermt de gevoelige gegevens van onze applicatie.
In Java zijn er twee stappen om inkapseling te implementeren. Hieronder volgen de stappen:
- Gebruik de toegangsmodificator ‘privé’ om de variabelen van de klasleden te declareren.
- Om toegang te krijgen tot deze privélidvariabelen en hun waarden te wijzigen, moeten we respectievelijk de public getter- en setter-methoden bieden.
Laten we nu het voorbeeld van inkapseling in Java implementeren.
Java Encapsulation-voorbeeld
Uitgang:
In het bovenstaande programma verklaren we een klasse die de inkapselingseenheid is. Deze klas Student heeft de gegevens (Student_Id en naam) en de methoden voor het lezen en instellen van waarden voor deze leden gebundeld in een enkele eenheid.
Let op de toegangsmodificatoren die zijn gekoppeld aan de ledenvelden. Beide ledenvelden zijn privé, zodat ze niet toegankelijk zijn buiten de klas van Student.
We bieden getters (getId en getname) om de waarden van deze velden te lezen en setter-methoden (setId en setname) om waarden voor deze methoden in te stellen. Dit is de enige toegang die ze hebben en dat moet ook worden gedaan met behulp van het Student class-object.
Getter- en zettermethoden
Om inkapseling in Java te implementeren, maken we de data-lidvariabelen van de klasse als privé. Nu zijn deze privévariabelen niet toegankelijk voor iets buiten de klasse, inclusief het klasseobject.
Dit betekent dat als we een klasse ABC hebben als volgt.
klas ABC {
privé int leeftijd;
Laten we als volgt een object van klasse ABC maken:
ABC abc = nieuw ABC ();
abc.age = 21; // compiler-fout
Dus in de bovenstaande code zal toegang tot de private variabele met behulp van het class-object resulteren in een compilatiefout.
Om toegang te krijgen tot de privévariabelen en hun waarden te lezen en enkele nieuwe waarden erin in te stellen, hebben we een manier nodig om dit te doen. Java biedt dus een manier om toegang te krijgen tot privévariabelen met behulp van getter- en setter-methoden.
Getter en Setters zijn openbare methoden die we kunnen gebruiken om de waarden van de privévariabelen te creëren, wijzigen, verwijderen of gewoon te bekijken.
Het onderstaande programma is een voorbeeld van de methoden Getter en Setter.
Uitgang:
Het bovenstaande programma heeft een klasse-account en het heeft vier privévariabelen die verband houden met het account. Omdat alle gegevensleden privé zijn, hebben we de getter- en setter-methoden voor elk van deze variabelen verstrekt.
In de hoofdmethode lezen en stellen we waarden in voor deze privévariabelen met behulp van de public getter- en setter-methoden die toegankelijk zijn via het object van de klasse Account.
beste youtube naar mp3-converter voor mac
Gegevens verbergen in Java
Vaak gebruiken we inkapseling en gegevens die door elkaar worden verborgen. Maar beide zijn niet hetzelfde. Java-inkapseling houdt zich bezig met het groeperen van gerelateerde gegevens in een enkele eenheid om een beter beheer en beveiliging van gegevens te garanderen.
Het verbergen van gegevens daarentegen beperkt de toegang van het gegevenslid door de implementatiedetails te verbergen. Hoewel inkapseling niet echt het verbergen van gegevens is, biedt het ons de manier om gegevens te verbergen. Gegevens verbergen wordt bereikt met behulp van toegangsmodificatoren.
Java biedt vier toegangsmodificatoren.
- openbaar: Toegankelijk voor iedereen.
- privaat: Alleen toegankelijk binnen de klas.
- beschermd: Toegankelijk voor het bevattende pakket en de subklassen.
- standaard: Toegankelijk binnen het pakket.
Encapsulation bundelt de gegevens in een enkele eenheid, dus in zekere zin verbergt het de gegevens. Het maakt de gegevens ook privé en is dus niet toegankelijk voor de buitenwereld. Om de gegevens privé te maken, gebruiken we de toegangsmodificator privé, een concept voor het verbergen van gegevens.
Tegelijkertijd worden alleen de relevante details aan de eindgebruiker verstrekt zonder de implementatiedetails bloot te leggen, wat een definitie van abstractie is. We kunnen inkapseling dus zien als een combinatie van zowel abstractie als gegevens verbergen.
Waarom hebben we inkapseling nodig?
Er zijn verschillende redenen waarom inkapseling essentieel is in Java:
- Inkapseling stelt ons in staat om de code of een deel van de code te wijzigen zonder dat we andere functies of code hoeven te wijzigen.
- Inkapseling bepaalt hoe we toegang krijgen tot gegevens.
- We kunnen de code aanpassen op basis van de vereisten door middel van inkapseling.
- Inkapseling maakt onze toepassingen eenvoudiger.
Veel Gestelde Vragen
V # 1) Waarom wordt inkapseling gebruikt in Java?
Antwoord: Inkapseling in Java is vooral handig om de gegevens te verbergen. Of met andere woorden, om te beslissen over de toegang die tot gegevens wordt verleend, wie er wel en niet toegang toe heeft.
Vraag 2) Wat is inkapseling in OOP?
Antwoord: Inkapseling is een van de belangrijke pijlers van objectgeoriënteerde programmeertaal en het gaat over het bundelen van gegevens en methoden die op die gegevens werken tot een enkele eenheid. Bijvoorbeeld, een klasse in Java is een ingekapselde structuur. Encapsulation behandelt ook beslissingen over het verlenen van toegang tot gegevens.
V # 3) Wat is het voordeel van inkapseling in Java?
Antwoord: Het grote voordeel van inkapseling in Java is het verbergen van gegevens. Met behulp van inkapseling kunnen we de programmeur laten beslissen over de toegang tot gegevens en methoden die op die gegevens werken. Bijvoorbeeld, als we willen dat een bepaald stukje data ontoegankelijk is voor iemand buiten de klas, dan maken we die data privé.
Vraag 4) Wat is het inkapselingsproces?
Antwoord: Inkapseling is een proces waarbij gegevens worden opgehaald uit één formaat of protocol (in netwerktermen) en deze worden vertaald of opnieuw geformatteerd in een ander formaat of protocol, zodat de gegevens toegankelijk zijn via de toepassingen of het netwerk en tegelijkertijd worden beschermd.
V # 5) Wat is de laatste stap in gegevensinkapseling?
Antwoord: De laatste stap bij het inkapselen is het veranderen van de gebruikersinformatie in gelijkwaardige gegevens. Vervolgens worden deze gegevens veranderd in segmenten die verder worden omgezet in datapakketten. Datapakketten worden in een logisch frame geplaatst dat heen en weer kan worden overgedragen in de softwareomgeving
Gevolgtrekking
Hiermee is onze tutorial over inkapseling in Java afgerond. Inkapseling is een techniek waarbij lidvariabelen en de methoden die op deze gegevensleden werken, worden gebundeld tot een enkele eenheid. Een klasse in Java is een klassiek voorbeeld van inkapseling, omdat het de gegevens en methoden in een enkele eenheid verpakt.
Java realiseert implementatie van inkapseling door alle gegevensleden privé te maken en vervolgens getter- en setter-methoden te bieden die openbaar zijn, zodat we de waarden van de privévariabelen kunnen lezen en nieuwe waarden voor deze variabelen kunnen instellen.
Bezoek hier voor de exclusieve Java Training Tutorial Series.
Aanbevolen literatuur
- JAVA-zelfstudie voor beginners: 100+ praktische Java-videotutorials
- TreeMap in Java - Tutorial met Java TreeMap-voorbeelden
- Java Double - Tutorial met programmeervoorbeelden
- Java Float-zelfstudie met programmeervoorbeelden
- Java Reverse String: zelfstudie met programmeervoorbeelden
- Java Enum: zelfstudie over Java-opsomming met voorbeelden
- Java Integer en Java BigInteger Class met voorbeelden
- Java String bevat () Method Tutorial met voorbeelden