Java - Klassen en onveranderlijke objecten

Inhoudsopgave
De ontwikkeling van een applicatie is niet alleen het schrijven van code die een probleem oplost, zoals is aangetoond, er zijn duizenden manieren om elke situatie aan te pakken die op ons pad komt. De objectoriëntatie het gaat verder dan het maken van lessen en instantiëren, het is iets dat een ontwikkelingsstijl en -filosofie zou moeten zijn.
Om ons te blijven verdiepen in wat objectoriëntatie vertegenwoordigt als een filosofie, moeten we verschillende concepten begrijpen, sommige eenvoudiger, andere complexer, maar naarmate we ze aan onze kennis toevoegen, zullen we een beter begrip krijgen van hoe een toepassing het hoofd moet bieden.
Wanneer we een maken object, het is normaal dat we hun attributen kunnen wijzigen in de loop van hun bestaan ​​in onze programma's of applicaties, maar dit gedrag is niet altijd wat we willen, hetzij om technische redenen of omdat we de integriteit van de instanties willen behouden, er zal Er zijn momenten waarop degenen onder ons die willen dat een object wordt gewijzigd.
Wat zijn ze?Om aan deze behoefte te voldoen, hebben we zogenaamde onveranderlijke klassenDeze klassen hebben een reeks privéattributen, die vanwege hun zichtbaarheid niet kunnen worden beïnvloed door externe elementen, maar deze klassen hebben ook geen wijzigingsmethoden, dus zodra het object via de constructor tot stand is gebracht, zullen hun attributen niet veranderen.
Om een ​​klasse onveranderlijk te maken, is een van de eerste stappen om niet te hebben methodes instellen, dat wil zeggen, degenen die waarden toewijzen aan de attributen, laten we in de volgende code een klein voorbeeld zien van hoe een onveranderlijke klasse te krijgen:

We zien in het voorbeeld hoe we een bouwen klas StudentIn deze klasse moeten we dan aan alle vereisten voldoen om een ​​onveranderlijke klasse te zijn, we hebben privéattributen gedefinieerd, de constructor is de enige die waarden toekent bij het instantiëren en we hebben methoden waarmee we toegang hebben tot de waarden van de attributen.
We kunnen denken dat dit heel eenvoudig is, maar voor een deel is het dat niet, want ondanks het plaatsen van de privé-attributen en het is een begin om geen methoden te hebben die ze wijzigen, maar we moeten aandacht besteden aan andere elementen die we in onze lessen kunnen opnemen die in strijd kunnen zijn met het principe dat we hebben ontwikkeld, laten we het volgende voorbeeld bekijken:

We zien dat het praktisch dezelfde studentenklas is, maar we hebben een nieuw attribuut gedefinieerd dat is "Datum gecreeërd"Dit attribuut heeft de functie om de datum op te slaan waarop we een object maken, maar het is van het type" DatumDit is een probleem voor ons, aangezien we van dit type zijn, we een methode kunnen gebruiken die de waarde verandert en deze koppelt aan de attribuutreferentie, hierdoor zou het niet langer een onveranderlijke klasse zijn.
We moeten dan voor deze details zorgen als we deze bron willen gebruiken bij het maken van onze applicaties en programma's.
We hebben in deze tutorial een nieuw concept van objectoriëntatie geleerd en verder hebben we de voorbeelden in JavaWe kunnen dit toepassen op elke taal, uiteraard met behoud van technische verschillen, dus we zullen werken met filosofie en niet met technische details.Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een ​​positief punt te geven
wave wave wave wave wave