Introduzione agli oggetti in C #

Come già noto, C # è un linguaggio di programmazione orientato agli oggetti ed è pronunciato come C Sharp. Sebbene C # sia stato evoluto da C ++, entrambi si differenziano tra loro. Le differenze di base possono essere comprese attraverso C ++ vs C #.

L'oggetto è un'istanza di una classe. Qui la memoria viene allocata in modo dinamico per fornire l'output di un determinato programma. Quindi, come possiamo spiegare questa allocazione dinamica? Vorrei provare a spiegarlo in un modo un po 'non tecnico. Gli oggetti vengono creati per accedere a diverse funzioni o variabili definite nella classe. Quindi, un oggetto non sa a quale tipo di dati accederà effettivamente. Quindi, dopo aver ottenuto il valore dagli elementi a cui si accede, sistemerebbe la memoria in modo dinamico.

Creare un oggetto

In generale, un oggetto può essere creato in 2 modi. Uno di questi è utilizzando il comando "nuovo". La sintassi generale per l'oggetto è di seguito:

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

E poi usando il nome-oggetto possiamo accedere ai rispettivi metodi e variabili che sono definiti all'interno della classe.

Un altro modo di definire un oggetto è facendo riferimento a un altro oggetto. Qualcosa come assegnare il valore.

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

E possiamo accedere alla variabile e ai metodi nella classe usando gli oggetti, nome-oggetto1 e nome-oggetto2.

Esempi di oggetti in C #

Qui avremo un esempio per ogni modo di creare un oggetto in C #.

Di seguito è riportato un programma per trovare il quadrato di un numero.

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

Produzione:

Quindi, nel programma sopra

  • Abbiamo creato una classe Square e scritto due funzioni all'interno della classe. Una funzione che è anche un costruttore (nome della funzione uguale al nome della classe) è quella di inserire il valore di un numero e altro per eseguire l'operazione effettiva.
  • Nella nostra classe First che ha al suo interno la funzione principale, abbiamo inizializzato i nostri oggetti e passato il parametro, per il numero che vogliamo effettivamente eseguire l'operazione quadrata.
  • E abbiamo dichiarato un risultato variabile; stiamo passando l'output del metodo a cui si accede all'oggetto 'Sq', che esegue l'operazione effettiva.
  • Finalmente il risultato quadrato nella nostra console.

Per il nostro prossimo modo di creare un oggetto, l'esempio è il seguente:

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

Produzione:

E a un'estensione di questo, possiamo persino assegnare valore alla nostra variabile usando un oggetto. Vediamo come possiamo farlo.

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

Qui, abbiamo avuto accesso alla variabile e modificato il suo valore da 6 a 7. Quindi l'output viene stampato dopo aver inizializzato il valore nella nuova variabile risultato3. L'output ottenuto è inferiore.

Produzione:

Fin qui abbiamo creato un oggetto e lo abbiamo fatto riferimento in un unico formato di testo. Ora vediamo cosa succede se abbiamo bisogno di una matrice di oggetti per archiviare e manipolare i nostri dati.

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

Nel programma sopra, lo stesso di prima abbiamo creato una matrice di oggetti e assegnato un valore a ciascun oggetto. Abbiamo quindi eseguito la nostra seconda funzione per generare il quadrato di due numeri.

L'output di quanto sopra si trova come di seguito:

Produzione:

Come esercizio puoi provare a caricare i voti di 5 studenti in 3 materie usando una matrice dell'oggetto?

Conclusione

Come visto sopra, abbiamo creato con successo un oggetto in diversi modi e l'abbiamo usato per assegnare valori alle variabili e chiamare le funzioni presenti all'interno della classe. Ma qui, dobbiamo capire e seguire alcune regole basate sui modificatori di accesso. Un oggetto non può accedere a variabili / funzioni con un modificatore di accesso "privato" che appartiene a un'altra classe. Ma può accedere alle stesse variabili di classe o funzioni sebbene dichiarate con un modificatore privato. Quindi, in questo modo ci sono un insieme di regole definite rispetto a classi, variabili, funzioni e oggetti.

Prova a creare oggetti in diversi modi con diversi modificatori di accesso e controlla gli output per conoscere l'ambito degli oggetti e continuare a imparare.

Articoli consigliati

Questa è una guida agli oggetti in C #. Qui discutiamo i diversi modi di creare oggetti in C # insieme ad esempi e alla sua implementazione del codice. Puoi anche consultare i seguenti articoli per saperne di più -

  1. Distruttore in C #
  2. Matrici dentellate C #
  3. Funzioni C #
  4. Che cos'è il multithreading in C #?
  5. Oggetto in Java
  6. Metodi di multithreading in C #

Categoria: