Introduksjon til objekter i C #
Som allerede kjent er C # et objektorientert programmeringsspråk og uttales som C Sharp. Selv om C # har blitt utviklet fra C ++, skiller begge seg med hverandre. De grunnleggende forskjellene kan forstås gjennom C ++ vs C #.
Objektet er et eksempel på en klasse. Her blir minnet tildelt dynamisk for å gi utdataene fra et gitt program. Så, hvordan kan vi forklare denne dynamiske tildelingen? Jeg ville prøve å forklare det på en lite ikke-teknisk måte. Objekter lages for å få tilgang til forskjellige funksjoner eller variabler som er definert under klassen. Altså, et objekt vet ikke hvilken datatype det faktisk kommer til å få tilgang til. Så etter å ha fått verdien fra de tilgjengelige elementene, ville det arrangere minnet dynamisk.
Opprette et objekt
Generelt kan et objekt opprettes på to måter. En av dem er å bruke den "nye" kommandoen. Den generelle syntaks for objektet er nedenfor:
Class-name object-name = new Class-name();
Og så ved å bruke objektnavnet kan vi få tilgang til respektive metoder og variabler som er definert i klassen.
En annen måte å definere et objekt på er med henvisning til et annet objekt. Noe som å tildele verdien.
Class-name object-name1 = new Class-name();
Class-name object-name2;
Object-name2=object-name1;
Og vi kan få tilgang til variabelen og metodene i klassen ved å bruke objektene, objekt-navn1 og objekt-navn2.
Eksempler på objekter i C #
Her skal vi ha ett eksempel for hver måte å lage et objekt på i C #.
Nedenfor er et program for å finne kvadratet til et tall.
using System;
class Square
(
public int side;
public Square(int a)
(
side=a;
)
public int Sq()
(
return side*side;
)
)
class First
(
static void Main(String () args)
(
int result;
Square s= new Square(4);
result=s.Sq();
Console.WriteLine("Square of the given number is " + result);
)
)
Produksjon:
Så i programmet ovenfor
- Vi har laget et klassetorg og skrevet to funksjoner inne i klassen. En funksjon som også er en konstruktør (Funksjonsnavn som for klassens navn) er for å legge inn verdien til et nummer og annet for å utføre den faktiske operasjonen.
- I vår klasse First som har hovedfunksjonen inne i den, har vi initialisert objektet vårt og gitt inn parameteren, for hvilket nummer vi faktisk ønsker å utføre den firkantede operasjonen.
- Og vi erklærte et variabelt resultat; vi passerer utdataene fra objekttilgangsmetoden 'Sq', som gjør selve operasjonen.
- Endelig gir vi det firkantede resultatet i konsollen vår.
For vår neste måte å lage et objekt på, er eksemplet som nedenfor:
using System;
class Square
(
public int side;
public Square(int a)
(
side=a;
)
public int Sq()
(
return side*side;
)
)
class First
(
static void Main(String () args)
(
int result1, result2;
Square s1= new Square(4);
Square s2;
s2=s1;
result1=s1.Sq();
result2=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
)
)
Produksjon:
Og til en utvidelse til dette, kan vi til og med tilordne verdi til variabelen vår ved hjelp av et objekt. La oss se hvordan vi kan gjøre det.
using System;
class Square
(
public int Side;
public Square(int side)
(
Side=side;
)
public int Sq()
(
return Side*Side;
)
)
class First
(
static void Main(String () args)
(
int result1, result2, result3;
Square s1= new Square(4);
Square s2= new Square(6);
result1=s1.Sq();
result2=s2.Sq();
s2.Side=7;
result3=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
)
)
Her har vi fått tilgang til variabelen og endret verdien fra 6 til 7. Deretter skrives utskriften ut etter initialisering av verdien til den nye variableresultatet3. Utbyttet oppnådd er under.
Produksjon:
Til her har vi laget et objekt og referert til det gjennom et enkelt tekstformat. La oss nå se hva hvis vi trenger en rekke objekter for å lagre og manipulere dataene våre.
using System;
class Square
(
public int Side;
public void Sqr(int side)
(
Side=side;
)
public int Sq()
(
return Side*Side;
)
)
class First
(
static void Main(String () args)
(
int result1, result2, result3;
Square() sq = new Square(3);
sq(0)= new Square();
sq(1)= new Square();
sq(2)= new Square();
sq(0).Side=13;
sq(1).Side=85;
sq(2).Side=25;
result1=sq(0).Sq();
result2=sq(1).Sq();
result3=sq(2).Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
)
)
I det ovennevnte programmet, det samme som før, har vi opprettet en rekke objekter og tildelt en verdi til hvert objekt. Vi utførte deretter vår andre funksjon for å generere kvadratet med to tall.
Resultatet av ovenstående ligger som nedenfor:
Produksjon:
Kan du prøve å laste inn karakterer av 5 elever i 3 fag ved å bruke en matrise av objektet?
Konklusjon
Som vi har sett ovenfor, har vi med hell laget et objekt på forskjellige måter og brukt det til å tilordne verdier til variabler og kalle funksjonene som er til stede i klassen. Men her må vi forstå og følge noen få regler basert på tilgangsmodifiserere. Et objekt har ikke tilgang til variabler / funksjoner med en "privat" tilgangsmodifiserer som tilhører en annen klasse. Men har tilgang til samme klassevariabler eller -funksjoner, selv om deklareres med en privat modifiserer. Så på denne måten er det et sett med regler som er definert med hensyn til klasser, variabler, funksjoner og objekter.
Prøv å leke rundt i å lage objekter på forskjellige måter med forskjellige tilgangsmodifiserere, og sjekk utgangene for å bli kjent med omfanget av objekter og fortsette å lære.
Anbefalte artikler
Dette er en guide til Objekter i C #. Her diskuterer vi de forskjellige måtene å lage objekter i C # sammen med eksempler og implementering av kode på. Du kan også se på følgende artikler for å lære mer -
- Destructor i C #
- C # Jagged Arrays
- C # Funksjoner
- Hva er multithreading i C #?
- Objekt i Java
- Metoder for multithreading i C #