PowerShell -klasser kommer i gang

PowerShell -klasser kommer i gang

En klasse er en brukerdefinert type som kan opprettes ved hjelp av nøkkelordet "Klasse”. PowerShell er et objektorientert språk. Dette betyr at når brukerne får en utdata i PowerShell -konsollen etter å ha kjørt kommandoer, returneres objekter. Utviklerne instantierer gjenstandene med klasser. PowerShell blir deretter brukt til å representere skjemaene eller definisjonene av objektene.

Dette innlegget vil utdype PowerShell -klassene i detalj.

PowerShell -klasser: Komme i gang

Disse metodene vil bli oversatt mens du forklarer PowerShell -klasser:

    • Opprette en klasse
    • Klassekonstruktører
    • Lage metoder
    • Klasse arv

Metode 1: Opprette en klasse

Klassekretsen trenger en “Klasse”Søkeord for å sette i gang en klasse. Eksemplet er gitt nedenfor for å demonstrere skapelsesprosessen.

Eksempel

Sjekk ut den gitte koden:

klasseansatt
[String] $ navn
[int] $ alder
[String] $ yrke

$ EMP = [Ansatt] :: Ny ()
$ emp.Name = "John doe"
$ emp.Alder = 24
$ emp.Yrke = "Doktor"
$ emp


I henhold til koden ovenfor:

    • Først erklærer en klasse som heter “Ansatt”.
    • Innenfor klassen, spesifiser de uttalte variablene.
    • Etter det, lag et objekt i klassen som heter “emp”.
    • Tilordne nå verdiene til de spesifiserte klassevariablene.
    • I det siste, påkalle det tildelte objektet “emp”:



Verdien av det opprettede "$ emp" -objektet er returnert til PowerShell -konsollen.

Metode 2: Klassekonstruktører

Klassekonstruktørene har samme navn som klassenavnet. Mer spesifikt brukes konstruktører til å definere standardverdiene og bidra til å validere logikken på tidspunktet for å lage nye objekter.

Eksempel

Dette eksemplet vil demonstrere hvordan du lager konstruktører i en klasse:

klasseansatt
[String] $ navn
[int] $ alder
[String] $ yrke
Ansatt ()
$ dette.Name = "John Philips"
$ dette.Alder = 24
$ dette.Yrke = "Doktor"

Ansatt ([String] $ navn, [int] $ alder, [String] $ yrke)
$ dette.Navn = $ Navn;
$ dette.Alder = $ Alder;
$ dette.Yrke = $ yrke;


$ EMP1 = [Ansatt] :: Ny ()
$ emp2 = ansatt i ny objekt James, 26, "Cook"
$ EMP1
$ EMP2


I den oppgitte koden ovenfor:

    • Husk først de diskuterte tilnærmingene for å erklære en klasse og spesifisere variablene.
    • Etter det, opprette en klassekonstruktør og tilordne de uttalte verdiene til de spesifiserte variablene via “dette”.
    • Lag nå en parameterisert konstruktør, med parametrene identiske med de spesifiserte.
    • I sin definisjon, tilordne de spesifiserte variablene de passerte verdiene.
    • Lag to objekter i klassen som heter “Emp1”, Og“Emp2”, Henholdsvis.
    • I det sistnevnte objektet, pass de uttalte verdiene til den parameteriserte konstruktøren.
    • Til slutt får du tilgang til de to objektene "Emp1”, Og“Emp2”, Henholdsvis:



Metode 3: Opprette metoder

En metode er ganske enkelt et sett med instruksjoner som brukes til å spesifisere handlingene som kan utføres på et objekt.

Eksempel

Denne illustrasjonen vil demonstrere å lage en metode i klassen:

klasseansatt
[int] $ høyde
[int] $ alder
[void] Grow ()
$ HEIGHTINCRASE = Get -Random -min 1 -Max 5;
$ dette.Høyde += $ Høydeøkning;
$ dette.Alder += 1


$ EMP = [Ansatt] :: Ny ()
for ($ i = 0; $ i -lt 5; $ i ++)
$ emp.Vokse()
$ emp


I denne koden:

    • Definere en kalt klasse “Ansatt”.
    • Innenfor klassen, spesifiser de uttalte variablene til “int”Type.
    • Nå, definer en funksjon som heter “Vokse()”.
    • I funksjonsdefinisjonen, generer de tilfeldige verdiene innenfor det spesifiserte området og lagrer den til en variabel, i.e., “Høydeøkning”.
    • I neste trinn, se den spesifiserte høyden via “dette”Og økning det basert på den genererte tilfeldige verdien.
    • På samme måte, se til “Alder”Og øk det med“1”.
    • Etter det, lag et klasseobjekt som heter “emp”Og bruk en“til”Loop for å generere tilfeldig høyde og alder”5”Ganger innenfor den tilhørende funksjonen, jeg.e., “Vokse()”:



Metode 4: Klassearv

Klassearven er prosessen for å bruke den til å lage en annen klasse, noe som gjør den til basen til en annen klasse. Den arvelige klassen kalles foreldreklassen eller underklassen. Dessuten kalles arven etter en klasse fra mer enn to klasser "Super" -klassen.

Eksempel

Følgende eksempel vil demonstrere konseptet med klassearven:

klasseansatt
[String] $ navn
[int] $ alder
[String] $ yrke
Ansatt ()
$ dette.Name = "John doe";
$ dette.Alder = 24
$ dette.Yrke = "Doktor"


Klasse Desig: Ansatt
[String] $ betegnelse = "Senior"

$ emp = [Desig] :: Ny ()
$ emp


I henhold til ovennevnte kodebit:

    • Først, definer klassen som heter “Ansatt”.
    • Innenfor klassen, spesifiser variablene med type "int”Og“streng”.
    • Nå, definer en klassekonstruktør.
    • Klassekonstruktøren viser til klasseverdiene ved å bruke “dette”.
    • Etter det, lag en barneklasse “Desig”Arvet fra foreldreklassen”Ansatt”For å legge til en annen variabel”streng”Typeverdi.
    • Opprett deretter et objekt som heter “emp”Og tilordne barneklassen”[Desig] :: Ny ()”Til det:




Som du kan se, har gjenstanden for barneklassen med hell arvet verdiene fra foreldreklassekonstruktøren.

Konklusjon

PowerShell -klasser er representasjonen av skjemaene eller definisjonene av objekter. Ettersom PowerShell er et objektorientert programmeringsspråk, blir objekter instantiert ved hjelp av PowerShell-klasser. Dette innlegget har dekket detaljer om klasser inkludert metoder, konstruktører eller arv.