c classes objects
Denne vejledning forklarer C # -klasser og objekter. Du lærer om C # klassemedlemmer, baseklasse, metoder, parametre og parametertyper med eksempler:
Datatypekonverteringer i C # blev forklaret detaljeret i vores tidligere tutorial. I denne vejledning vil vi udforske alt om klasser og objekter i C # i detaljer.
I lighed med de fleste af de objektorienterede programmeringssprog har C # også indbygget support til klasser og objekter.
=> Se den fulde C # træningsserie her
Hvad du lærer:
hvad man skal åbne jar-filer med
Klasser og objekter i C #
Et objekt på et programmeringssprog svarer til et objekt i den virkelige verden. Objektorienteret programmering er et koncept, hvor programmerne er designet ved hjælp af sæt klasser og objekter for at forenkle programudvikling og vedligeholdelse.
En klasse er en logisk samling af lignende slags objekter. Det er en af de mest grundlæggende typer i C #. Det er dybest set en datastruktur, der er en kombination af metoder, funktioner og felter. Det giver definitionen for de dynamiske forekomster, dvs. objekter, der skal oprettes til klassen.
For eksempel, hvis du indsamler data til en studerende i en ansøgning. Der kan være flere egenskaber for en studerende som f.eks. Et rulletal, klasse, sektion, emne osv. Hver af disse egenskaber kan betegnes som en egenskab for studerende, og den studerende kan betragtes som en samling af alle disse egenskaber.
Så her repræsenterer en klasse studerende, dvs. samlingen af objekter og elevattributter / egenskaber kan betegnes som dens objekter. Vi vil studere disse detaljeret i kommende emner.
Hvad er en klasse i C #?
Klasser oprettes ved hjælp af klassedeklaration. En klassedeklaration begynder med overskriften, der angiver attributter, modifikatorer, klassens navn osv. Erklæringen efterfølges af klassen i klassen, der indeholder medlemsdefinitioner mellem de krøllede seler '{' og '}'.
En klasse kan også have metoder. En metode definerer de operationer, der kan udføres i en klasse.
Lad os oprette en operation til at udføre den enkle opsummering af varemærker. For at udføre dette opretter vi en hovedmetode inde i klassen.
Hvad gjorde vi i ovenstående kodestykke?
hvordan man spiller .mkv filer på windows
Vi oprettede en klasse med navnet 'Student'. Derefter oprettede vi nogle datavariabler med forskellige værdier. Vi oprettede derefter en 'total_marks' heltalsvariabel, hvor vi lagrede opsummeringen af karakterer for begge emner.
Objekt og klasseinstans
Undertiden bruges udtrykkene klasse og objekt om hverandre, men begge er forskellige enheder. En klasse er definitionen af objektet, men det er ikke selve objektet. Objektet er også kendt som en forekomst af klassen. Klasseinstanser oprettes ved hjælp af 'ny' operator. En ny operatør tildeler hukommelse til en forekomst og påkalder en konstruktør til at initialisere den og returnerer et referenceobjekt.
For eksempel,hvis vi vil oprette en instans til klasselevet,
Student stu = new Student();
Her har vi oprettet en forekomst af klasse 'Student', og vi har defineret 'stu' som et referenceobjekt.
Klassemedlemmer
Medlemmer af en klasse kan være af statisk eller forekomststype. Instansmedlemmer er en del af objektet, mens statiske medlemmer er en del af klassen.
Lad os se på nogle af klassemedlemmerne:
- Felter: Variabler, der findes i en klasse, kaldes felter.
- Konstanter: Konstante værdier i klassen.
- Metoder: Logiske handlinger udført af klassen.
- Konstruktører: Krævet for at initialisere klassen eller forekomsten af klassen.
Hvad er en basisklasse?
Baseklassen er en klasse, der bruges til at oprette eller udlede en anden klasse. Klassen, der er afledt af en basisklasse, kaldes underklasse eller afledt klasse. Selvom en basisklasse ikke arver nogen anden klasse, modtager klassen, der stammer fra en basisklasse, alle data og adfærd fra basisklassen.
En basisklasse kan specificeres ved hjælp af nøgleordsklassen efterfulgt af klassens navn og typeparametre sammen med et kolon efterfulgt af basisklassen.
I det ovennævnte program arvede den afledte klasse Student således objekterne og egenskaberne for basisklassen, dvs. ClassName. Da den afledte klasse implicit indeholder alle medlemmer af en baseklasse, var vi i stand til at udskrive 'className' -variablen fra baseklassen uden at oprette nogen forekomst.
Vi vil diskutere mere om arv i vores kommende tutorials.
Metoder
Metoder er medlemmer af klassen, der implementerer en logisk eller beregningsmæssig handling, der er beregnet til at blive udført af objektet eller klassen. Der er adgang til statiske metoder, hvis de er defineret, gennem klassen, og alle instansmetoderne tilgås ved hjælp af en forekomst af klassen.
Metoder kan også indeholde parametre, der betyder, at variable referencer sendes til metoden. En metode kan også indeholde en returtype, der angiver beregningens slutprodukt / værdi af den metode, der kan returneres.
Nogle punkter, du skal huske, når du arbejder med metoden er:
- Hvis en metode ikke returnerer nogen værdi, skal returneringstyperne være ugyldige.
- Metodens signatur eller navn skal være unik inden for en klasse. Signaturen af en metode betyder navnet på metoden sammen med Parametrene, Modifikatorer og Datatype.
Hvad er parametre?
Parametre er de værdier eller referencevariabler, der overføres til metoden. Parametre modtager deres værdier fra argumenter, der er specificeret, mens de påberåber sig en bestemt metode.
Forskellige typer parametre er:
- Referenceparametre
- Værdiparametre
- Outputparametre
- Arrayparametre
I de fleste af vores eksempler bruger vi enten referencetype eller værditype.
Lad os se nærmere på disse.
TIL referenceparameter bruges, når du vil sende et argument via reference. Dette betyder, at argumentet, der overføres som en parameter til metoden, skal være en variabel med en værdi, og under udførelsen skal den repræsentere lagringsplaceringen for variabelens værdi.
Det værdi parameter bruges til at overføre inputværdierne til et argument. Værdiparameteren henviser til en lokal variabel, der sendes som en indledende værdi til argumentet, der derefter sendes som parameter.
Nedenfor er et eksempel for bedre at forstå klasse, objekt, metoder og parametre.
Hvad gjorde vi i ovenstående kodestykke?
I ovenstående kodestykke har vi defineret to-klasser, dvs. 'Marks' og 'Student'. Førsteklasses mærker indeholder metoden 'marksRecieved'. I denne metode har vi bestået 'Referenceparametre' betegnet med nøgleordet 'ref'. I denne metode har vi udført den enkle summering af to opnåede mærker og derefter udskrevet resultatet på konsollen.
Dernæst har vi en klasse-elev, der indeholder hovedmetoden, hvorfra vi kalder metoden fra Marks-klassen. Før vi ringer til metoden, skal vi oprette en forekomst af klassemarkeringen.
Marks m = new Marks();
Når vi har oprettet en forekomst til klassen, kan vi bruge denne forekomst til at kalde enhver metode, der er til stede i den forrige klasse. Da vi har erklæret en referenceparameter i metoden, skal vi sende en referencevariabel. For at gøre det bruger vi det deklarerede objekt efterfulgt af en prik og derefter navnet på den metode, som du vil have adgang til fra klasseinstansen.
Parametrene sendes inden i parentesen, der er placeret lige efter metodens navn. Et semikolon er placeret i slutningen for at betegne slutningen af linjen.
konvertere youtube til mp4 mac gratis online
m.marksRecieved(ref english, ref maths);
Konklusion
Klasser er planen for en brugerdefineret datatype. Det bruges til at gruppere lignende objekter sammen. Objekter er enheder, der definerer data og funktionalitet. Objekter er en runtime-enhed og er oprettet for at få adgang til alle medlemmer af klassen.
Den nye klasse erklæres ved hjælp af klassedeklarationen, der starter med nøgleordet 'klasse' efterfulgt af navnet på klassen. Det kan også angive modifikatorer eller attributter for klassen. Alle medlemmer af klassen erklæres mellem to krøllede seler “{“ og “}”.
En forekomst af et objekt oprettes ved hjælp af den 'nye' operator. Det betegnes ved hjælp af det klassenavn, som forekomsten oprettes for efterfulgt af en variabel til at gemme referencen for forekomsten, så er '=' lig med at underskrive efterfulgt af det 'nye' nøgleord og derefter igen navnet på klassen med både åbne og lukkede parenteser “()”.
Prøvekode:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace ConsoleApplication4 { class Marks { public void marksRecieved(ref int eng, ref int math) { //logical operations int total = eng + math; Console.WriteLine('Total mark is' + ' ' + total); Console.ReadLine(); } } class Student { public static void Main(string() args) { /* local variable definition */ int english = 90; int maths = 85; //defining the object for the class marks Marks m = new Marks(); //calling marks total method for calculation m.marksRecieved(ref english, ref maths); } } }
=> Se efter den nemme C # træningsvejledning her
Anbefalet læsning
- Python DateTime-tutorial med eksempler
- Java-interface og abstrakt klasseundervisning med eksempler
- Dybdegående formørkelsesvejledninger til begyndere
- Unix Shell Scripting Tutorial med eksempler
- Selen Find Element By Text Tutorial med eksempler
- Klasser og objekter i C ++
- Pythons hovedfunktionsvejledning med praktiske eksempler
- Python OOP-koncepter (Python-klasser, objekter og arv)