Java - klasser och oföränderliga objekt

Innehållsförteckning
Utvecklingen av en applikation är inte bara att skriva kod som löser ett problem, som det har visats, det finns tusentals sätt att attackera varje situation som kommer oss. De objektorientering det går utöver att göra klasser och instiniera, det är något som bör vara en utvecklingsstil och filosofi.
För att fortsätta fördjupa oss i vad objektorientering representerar som en filosofi måste vi förstå olika begrepp, vissa enklare, andra mer komplexa, men när vi lägger till dem i vår kunskap kommer vi att få en större förståelse för hur man möter en applikation.
När vi skapar en objekt, det normala är att vi kan ändra deras attribut under deras existens i våra program eller applikationer, men detta beteende är inte alltid vad vi vill, antingen av tekniska skäl eller för att vi vill behålla instansernas integritet, det kommer att vara tider då vi som vill att ett objekt ska modifieras.
Vad är dem?För att tillgodose detta behov har vi vad som kallas oföränderliga klasserDessa klasser har en serie privata attribut, som på grund av deras synlighet inte kan beröras av externa element, men även dessa klasser har inte modifieringsmetoder, så när objektet väl är etablerat genom konstruktören kommer deras attribut inte att förändras.
Att göra en klass oföränderlig ett av de första stegen är inte att ha sätta metoder, det vill säga de som tilldelar attributen värden, låt oss se i följande kod ett litet exempel på hur får man en oföränderlig klass:

Vi ser i exemplet hur vi bygger en klass StuderandeI den här klassen måste vi uppfylla alla krav för att det ska vara en oföränderlig klass, vi har definierat privata attribut, konstruktören är den enda som tilldelar värden vid instans och vi har metoder som gör att vi kan komma åt värdena Av attributen.
Vi kan tro att det här är väldigt enkelt, men delvis är det inte det, trots att det placeras privata attribut och att inte ha metoder som modifierar dem är en början, men vi måste vara uppmärksamma på andra element som vi kan inkludera i våra klasser som kan strida mot principen som vi har utvecklat, låt oss se följande exempel:

Vi ser att det är praktiskt taget samma elevklass, men vi har definierat ett nytt attribut som är ”Skapat datum”Detta attribut har funktionen att lagra det datum då vi skapar ett objekt, men det är av typen DatumDetta är ett problem för oss eftersom vi av denna typ kan använda en metod som ändrar värdet och associerar det med attributreferensen, med detta skulle det inte längre vara en oföränderlig klass.
Vi måste sedan ta hand om dessa detaljer om vi vill använda denna resurs i skapandet av våra applikationer och program.
Vi har lärt oss i denna handledning ett nytt koncept för objektorientering och utöver det har vi gjort exemplen i JavaVi kan tillämpa detta på alla språk, naturligtvis spara tekniska skillnader, så vi kommer att arbeta med filosofi och inte med tekniska detaljer.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng
wave wave wave wave wave