Inleiding tot objecten in C #

Zoals reeds bekend, is C # een objectgeoriënteerde programmeertaal en wordt het uitgesproken als C Sharp. Hoewel C # is geëvolueerd van C ++, onderscheiden beide zich van elkaar. De basisverschillen kunnen worden begrepen via C ++ versus C #.

Het object is een instantie van een klasse. Hier wordt geheugen dynamisch toegewezen voor het leveren van de uitvoer van een bepaald programma. Dus, hoe kunnen we deze dynamische toewijzing verklaren? Ik zou proberen het op een kleine niet-technische manier uit te leggen. Objecten worden gemaakt om toegang te krijgen tot verschillende functies of variabelen die onder de klasse zijn gedefinieerd. Een object weet dus niet tot welk gegevenstype het daadwerkelijk toegang heeft. Dus na het verkrijgen van de waarde van de benaderde elementen, zou het geheugen dynamisch worden gerangschikt.

Een object maken

Over het algemeen kan een object op 2 manieren worden gemaakt. Een daarvan is met behulp van de opdracht "nieuw". De algemene syntaxis voor het object is hieronder:

Class-name object-name = new Class-name();

En dan kunnen we met behulp van de objectnaam toegang krijgen tot respectieve methoden en variabelen die binnen de klasse zijn gedefinieerd.

Een andere manier om een ​​object te definiëren is door te verwijzen naar een ander object. Zoiets als het toewijzen van de waarde.

Class-name object-name1 = new Class-name();
Class-name object-name2;
Object-name2=object-name1;

En we hebben toegang tot de variabele en methoden in de klasse met behulp van de objecten, objectnaam1 en objectnaam2.

Voorbeelden van objecten in C #

Hier hebben we een voorbeeld voor elke manier om een ​​object in C # te maken.

Hieronder is een programma voor het vinden van het kwadraat van een getal.

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);
)
)

Output:

Dus in het bovenstaande programma

  • We hebben een klassenvierkant gemaakt en twee functies in de klas geschreven. Een functie die ook een constructor is (functienaam hetzelfde als voor klassenaam) is het invoeren van de waarde van een getal en een andere voor het uitvoeren van de daadwerkelijke bewerking.
  • In onze klasse First, die de hoofdfunctie erin heeft, hebben we onze objecten 's' geïnitialiseerd en de parameter doorgegeven, voor welk nummer we eigenlijk de kwadraatbewerking willen uitvoeren.
  • En we verklaarden een variabel resultaat; we geven de uitvoer door van de objecttoegangsmethode 'Sq', die de daadwerkelijke bewerking uitvoert.
  • Eindelijk het vierkante resultaat uitvoeren in onze console.

Voor onze volgende manier om een ​​object te maken, is het voorbeeld hieronder:

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);
)
)

Output:

En als uitbreiding hierop kunnen we zelfs waarde aan onze variabele toekennen met behulp van een object. Laten we kijken hoe we dat kunnen doen.

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);
)
)

Hier hebben we toegang gehad tot de variabele en zijn waarde gewijzigd van 6 in 7. Vervolgens wordt de uitvoer afgedrukt nadat de waarde is geïnitialiseerd naar het nieuwe resultaat van de variabele3. De verkregen output is hieronder.

Output:

Tot nu toe hebben we een object gemaakt en ernaar verwezen via een enkel tekstformaat. Laten we nu eens kijken wat als we een reeks objecten nodig hebben om onze gegevens op te slaan en te manipuleren.

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);
)
)

In het bovenstaande programma hebben we hetzelfde als eerder een reeks objecten gemaakt en een waarde aan elk object toegewezen. Vervolgens hebben we onze tweede functie uitgevoerd om het kwadraat van twee getallen te genereren.

De output van het bovenstaande is als volgt:

Output:

Als een oefening kun je proberen om in cijfers van 5 studenten in 3 vakken te laden met behulp van een reeks van het object?

Conclusie

Zoals we hierboven hebben gezien, hebben we met succes een object op verschillende manieren gemaakt en gebruikt om waarden aan variabelen toe te wijzen en de functies aan te roepen die binnen de klasse aanwezig zijn. Maar hier moeten we enkele regels begrijpen en volgen op basis van de toegangsmodificatoren. Een object heeft geen toegang tot variabelen / functies met een 'private' toegangsmodificator die tot een andere klasse behoort. Maar heeft toegang tot dezelfde klassenvariabelen of functies, hoewel gedeclareerd met een privé-modifier. Op deze manier is er dus een set regels die worden gedefinieerd met betrekking tot klassen, variabelen, functies en objecten.

Probeer op verschillende manieren te spelen met het maken van objecten met verschillende toegangsmodificatoren en bekijk de uitgangen om de reikwijdte van objecten te leren kennen en blijf leren.

Aanbevolen artikelen

Dit is een gids voor objecten in C #. Hier bespreken we de verschillende manieren om objecten in C # te maken, samen met voorbeelden en de implementatie van de code. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Destructor in C #
  2. C # Jagged Arrays
  3. C # Functies
  4. Wat is multithreading in C #?
  5. Object in Java
  6. Methoden voor multithreading in C #