Differenza tra classe e struttura in C #

Differenza chiave - Classe vs Struttura in C #
 

C # è un linguaggio di programmazione moderno, generale e di alto livello sviluppato da Microsoft. È un linguaggio di programmazione che ha una somiglianza simile a Java. Contiene potenti funzionalità di programmazione come delegati, indicizzatori e Language Integrated Query. Il vantaggio principale di C # è che supporta la programmazione orientata agli oggetti (OOP). OOP è utile per modellare un programma o un software complesso usando oggetti. Gli oggetti sono creati usando le classi. La struttura è anche un concetto in C #. Nella programmazione, una variabile è un'area di memoria in grado di memorizzare i dati. Ogni variabile ha un tipo di dati specifico da memorizzare. Due tipi di dati sono un tipo di valore e un tipo di riferimento. Nel tipo di valore, un valore può essere assegnato direttamente. Alcuni esempi sono int, char, float. I tipi di dati del tipo di riferimento non memorizzano i dati effettivi, ma contengono un riferimento alla variabile. Classi e strutture contengono dati. Questo articolo discute la differenza tra Class e Structure in C #. Il differenza fondamentale tra classe e struttura in C # è, una classe è un tipo di dati di tipo riferimento mentre una struttura è un tipo di dati di tipo valore.

CONTENUTO

1. Panoramica e differenza chiave
2. Qual è la classe in C #
3. Cos'è la struttura in C #
4. Somiglianze tra classe e struttura in C #
5. Confronto affiancato - Classe vs Struttura in C # in forma tabulare
6. Sommario

Qual è la classe in C #?

In OOP, tutto è considerato come un oggetto. In un programma o software, ci sono numeri di oggetti. Questi oggetti non esistono in isolamento. Ogni oggetto interagisce con altri oggetti. Questa comunicazione avviene usando le azioni. Un oggetto consiste di attributi e metodi. Gli attributi definiscono le caratteristiche dell'oggetto e i metodi definiscono le azioni o i comportamenti dell'oggetto. Gli oggetti sono creati usando una classe. Una classe è simile a una descrizione o a un progetto per creare un oggetto. La classe ha attributi e metodi che dovrebbero essere contenuti nell'oggetto. La creazione di un oggetto usando una classe è nota come istanziazione. Per creare un oggetto di tipo Student, dovrebbe esserci una classe chiamata Student. Per definire una classe in C #, viene utilizzata la parola chiave 'class'.

Una classe contiene un costruttore. È una funzione speciale che viene eseguita ogni volta che si crea un nuovo oggetto della classe. Un costruttore ha lo stesso nome della classe. Non ha un tipo di ritorno. Il costruttore predefinito non ha parametri. Il costruttore parametrizzato contiene parametri. Una classe può contenere anche un distruttore. È una funzione speciale che viene eseguita quando un oggetto della classe non rientra nello scope. Il distruttore ha lo stesso nome del nome della classe e inizia con ~. Non restituisce alcun valore e non richiede parametri.

La classe Student contiene attributi e metodi che dovrebbero esistere negli oggetti creati.

usando il sistema;

spazio dei nomi Application1

studente di classe

int studentID;

nome della stringa;

public Student (int sid, string sname)

studentID = sid;

name = sname;

~ Student ();

public void displayDetails () )

Console. WriteLine ("ID studente è 0", ID studente);

Console. WriteLine ("Nome studente è 0", nome);

class StudentInfomation

static void Main (string [] args)

Studente s = nuovo studente (1, "Ann");

s.displayDetails ();

Console.ReadLine ();

Secondo il programma di cui sopra, lo spazio dei nomi è chiamato Applicazione 1. Lo spazio dei nomi contiene un insieme correlato di classi. Studente di classe ha due ID studente e nome proprietà. Nel programma principale, viene creato l'oggetto Studente. Quell'oggetto è '. Durante la creazione dell'oggetto, il costruttore imposta i valori. Quindi, viene richiamato il metodo displayDetails. Questo stamperà l'id e il nome dello studente.

Le classi possono anche implementare l'ereditarietà. L'ereditarietà è una caratteristica della programmazione orientata agli oggetti. È utilizzare gli attributi e i metodi di una classe già esistente. Pertanto, una classe può ereditare un'altra classe.

Cos'è la struttura in C #?

La struttura è un tipo di dati di tipo valore in C #. È una singola variabile che contiene più tipi di dati. Una struttura può rappresentare un determinato record. Una struttura contiene attributi. Uno studente ha attributi come id, nome ed età. Una struttura è definita usando la parola chiave 'struct'. Un programma con struttura è il seguente.

usando il sistema;

struct Student

int id pubblico;

nome della stringa pubblica;

;

Studente di classe pubblica ()

public static void main (string [] args)

Studenti;

s.id = 1;

s.name = "Ann";

Console.WriteLine ("ID studente 0", s.id);

Console.WriteLine ("Nome studente 0", s.name);

Console.ReadLine ();

Secondo il programma di cui sopra, la struttura contiene due proprietà. Sono id e nome. Nel programma principale, la dichiarazione di Student dichiara s di tipo Student. Quindi, l'id e il nome sono stati dati valori. Infine, quelli sono stampati sullo schermo.

Non è possibile modificare il costruttore predefinito di una struttura perché il costruttore predefinito viene definito automaticamente. La struttura non contiene distruttori. A differenza della classe, una struttura non può ereditare un'altra classe o un'altra struttura.

Quali sono le somiglianze tra classe e struttura in C #?

  • Entrambi hanno attributi e metodi.
  • Sia la classe che la struttura possono implementare una o più interfacce.

Qual è la differenza tra classe e struttura in C #?

Classe vs struttura in C #

Una classe è un progetto utilizzato per creare un oggetto. Una struttura è un tipo di dati di tipo valore che può contenere dati correlati di vari tipi di dati.
 Tipo di dati
Una classe è un tipo di dati del tipo di riferimento. Una struttura è un tipo di dati di tipo valore.
Eredità
Una classe può ereditare da altre classi o strutture. Una struttura non può ereditare altre classi o strutture.
 la creazione di istanze
Una classe crea un'istanza di un oggetto utilizzando la nuova parola chiave. Una struttura crea un'istanza di un oggetto senza utilizzare la nuova parola chiave.
Costruttore predefinito
Può cambiare il costruttore predefinito di una classe. Impossibile modificare il costruttore predefinito di una struttura. Il costruttore predefinito viene automaticamente definito.
Distruttore
La classe può avere un distruttore. La struttura non ha un distruttore.

Riepilogo - Classe vs Struttura in C # 

C # è un linguaggio di programmazione creato da Microsoft. Nella programmazione, i dati devono essere memorizzati. I dati sono memorizzati in posizioni di memoria e sono noti come variabili. Ogni variabile ha un tipo specifico di dati da memorizzare. Possono esserci tipi di dati del tipo di valore e tipi di dati del tipo di riferimento. I tipi di dati del tipo di valore memorizzano il valore effettivo. I tipi di dati del tipo di riferimento memorizzano un riferimento alla variabile. Classe e struttura hanno diversi tipi di dati. La differenza tra classe e struttura in C # è, la classe è un tipo di dati di tipo riferimento mentre una struttura è un tipo di dati di tipo valore.

Scarica il PDF di Class vs Structure in C #

È possibile scaricare la versione PDF di questo articolo e utilizzarlo per scopi offline come da nota di citazione. Si prega di scaricare la versione PDF qui: Differenza tra classe e struttura in C #

Riferimento:

1.tutorialspoint.com. "Classi C #". Il punto, Disponibile qui 
2.tutorialspoint.com. "Strutture C #". Il punto, Disponibile qui 

Cortesia dell'immagine:

1.'Logo C Sharp'By Microsoft, (Dominio pubblico) tramite Commons Wikimedia