C# programavime Properties yra didelė tema, nes jie suteikia efektyvų būdą valdyti prieigą prie objekto savybių. Kitose dalyse parodysiu, kaip naudoti Get- ir Set-Properties, kad kontroliuotume prieigą prie duomenų klasėse ir užtikrintume didesnį saugumą.
Svarbiausios įžvalgos
- Properties leidžia kontroliuoti prieigą prie klasės narystės kintamųjų.
- Get-Properties naudojami vertėms nuskaityti, Set-Properties - užrašyti vertes.
- P prieigą prie savybių turėtų būti vykdoma ne tiesiogiai per viešas narystės kintamuosius, o per Properties, kad būtų išsaugotas kapsuliavimo principas.
Žingsnis po žingsnio vadovas, kaip naudoti Properties
1. Pagrindinis Properties supratimas
Properties C# skiriasi nuo klasikinių narystės kintamųjų, nes jie suteikia kontroliuojamą prieigos formą. Yra galimybė apibrėžti getter (get) ir setter (set). Tai užtikrina, kad galima tik skaityti arba rašyti. Tai pagerina duomenų kapsuliavimą.

2. Sukurti naują pavyzdį
Sukurkime pavyzdį su automobiliu, kuris turi savybes, tokias kaip valstybinis numeris, markė, bako dydis ir degalų kiekis. Šios savybės mūsų klasėje yra apibrėžtos per Properties. Pirmiausia turite nustatyti savybes klasėje.
3. Sukurti konstruktorių
Sukurkite konstruktorių, kad nustatytumėte naujo automobilio savybes kuriant objektą. Šiuo atveju konstruktorius turėtų priimti parametrus valstybinio numerio, markės, bako dydžio ir degalų kiekio. Čia naudojate raktinį žodį this, kad nurodytumėte instancijos kintamuosius.
4. Sukurti degalų papildymo metodą
Dabar sukursime metodą, kuris leistų papildyti automobilio degalus. Šis metodas turi užtikrinti, kad dabartinis degalų kiekis ir papildomi litrai neviršytų bako dydžio. Sukurkite klaidos pranešimą, kuris praneša vartotojui, jei bakas yra per mažas.
5. Sukurti automobilio objektą
Dabar savo pagrindinėje klasėje sukurkite naują automobilio objektą. Pavyzdžiui, galite naudoti Opel kaip modelį ir nustatyti įvairius parametrus, kuriuos anksčiau apibrėžėme savo konstruktoriuje.
6. Išbandyti degalų papildymo metodą
Po to, kai automobilio objektas sukurtas, išbandykite papildymo metodą. Leiskite vartotojui įvesti litrų skaičių ir patikrinkite, ar viskas veikia tinkamai. Konsolėje turėtumėte matyti, kiek litrų dabar yra bake.
7. Įgyvendinti Get-Properties
Dabar norite sukurti Get-Property degalų kiekiui. Ši Property turėtų grąžinti dabartinę degalų kiekio būseną. Užtikrinkite, kad pavadinimas būtų rašomas PascalCase ir teisingai reikalingai kintamajai.
8. Pridėti Set-Properties
Papildykite savo klasę Set-Properties, kad vartotojas galėtų keisti degalų kiekį. Atkreipkite dėmesį, kad ir čia turėtų vykti validacija, kad įsitikintumėte, jog vertė neviršija bako dydžio.
9. Išbandyti Set-Property
Grįžkite į pagrindinę klasę ir atlikite testą nustatydami degalų kiekį. Patikrinkite naują vertę išvestyje.
10. Pridėti valstybinį numerį ir kitas savybes
Taip pat sukurkite Get- ir Set-Properties kitoms savybėms, pavyzdžiui, valstybinio numerio. Čia būtų pakankamai paprasta įgyvendinimas, nes reikalauja minimalios logikos.
11. Peržiūrėti ir patikrinti kodą
Peržiūrėkite visą kodą ir įsitikinkite, kad visos funkcijos veikia kaip tikėtasi. Išbandykite išvestis tiek Get-, tiek Set-Properties, kad įsitikintumėte, jog vertės yra teisingai nustatytos ir grąžinamos.
Santrauka - C# programavimas: Properties ir jų taikymas
Properties C# gali būti labai naudingos užtikrinant duomenų vientisumą klasėse. Tinkamai naudojant Get- ir Set-Properties, galite kontroliuoti prieigą ir narystės kintamųjų modifikavimą. Pavyzdys su automobiliu rodo, kaip praktiškai taikyti šias koncepcijas.
Dažnai užduodami klausimai
Kaip galiu apibrėžti Property C#?Property apibrėžiama su raktiniu žodžiu „public“, po kurio seka grąžinimo tipas, ir turi turėti bent vieną get- arba set-bloką.
Kodėl Properties geresnės nei viešosios kintamosios?Properties suteikia geresnį kapsuliavimą ir leidžia vykdyti validacijas getter'iuose ir setter'iuose, kas išlaiko duomenų vientisumą.
Ar galiu sujungti kelias savybes vienoje Property?Ne, Property paprastai atstovauja vienai savybei. Daugeliui verčių turėtumėte naudoti metodus.
Kaip išbandyti savo Properties funkcionalumą?Sukurkite testinius objektus ir kreipkitės į Properties savo pagrindinėje klasėje, kad patvirtintumėte jų vertes.