En egenskap refererer til en gruppe metoder definert for en bestemt type. Egenskaper er utrolige ettersom de gir en abstraksjon for funksjonalitet og logikk som kan deles mellom flere typer.
Egenskaper støtter konkrete og abstrakte metoder, som vi vil se i denne artikkelen.
Rust definer egenskap
For å definere en egenskap i rust, bruker vi trekknøkkelordet, etterfulgt av egenskapens navn og kropp. Egenskapskroppen kan inneholde enten betong eller abstrakt metode.
Syntaksen er som vist:
TraitTraitNameMerk at en egenskapsmetode inkluderer & selvparameteren. Dette må være den første parameteren i metoden, og andre parametere må være gitt etter.
egenskapsinfoI koden over definerer vi en sund som kalles informasjon som inneholder abstrakte metoder. Et bilobjekt kan bruke metodene ovenfor. Siden metoden for beskrivelses- og kjørelengdeverdier kan variere avhengig av bilen, må logikken imidlertid brukes tydelig.
Rust implementerer egenskap
Etter å ha definert en egenskap, kan vi trenge å implementere den. Syntaks for implementering av trekkmetode ligner på en strukturmetode.
Tenk på eksemplet nedenfor:
TraitInfoI eksemplet ovenfor definerer vi en struktur som har informasjon for et kjøretøy. Vi kan deretter implementere metoder, som vist ovenfor.
I hovedfunksjonen kan vi ha tilfeller for kjøretøystrukturene som vist:
fnMain ()I koden over definerer vi to forekomster av kjøretøystrukturen med egenskapene som er implementert annerledes.
Kallende trekkmetoder
Når vi har implementert metodene for en egenskap, kan vi kalle metoden ved å bruke DOT -notasjonen som vist:
Println!("", bil.beskrivelse());Dette skulle komme tilbake:
Modell: Camry, Produsent: Toyota, Pris: 25295Konklusjon
Denne guiden gir det grunnleggende for å jobbe med egenskaper i rustspråket. Vurder dokumentasjonen for å lære mer.