Classi e Oggetti in C#
La Programmazione Orientata agli Oggetti (OOP) è un paradigma di programmazione che si basa sulla creazione di oggetti, ciascuno dei quali contiene dati e metodi. In C#, le classi sono l’elemento fondamentale della programmazione orientata agli oggetti. In questa lezione, esploreremo in dettaglio cosa sono le classi e gli oggetti, impareremo la sintassi per dichiarare classi, definire proprietà e metodi, creare oggetti, accedere alle proprietà, chiamare metodi e utilizzare costruttori.
Concetto di OOP
L’OOP organizza il codice intorno al concetto di “oggetti”, che sono istanze delle classi. Una classe rappresenta un modello per creare oggetti. Ogni oggetto è un’istanza di una classe specifica e ha accesso ai suoi attributi e metodi.
Dichiarazione di una Classe
Le classi vengono dichiarate utilizzando la parola chiave class
. All’interno delle parentesi graffe {}
, vengono definiti gli attributi (proprietà) e i metodi della classe.
Sintassi per Dichiarare:
class NomeClasse
{
// Proprietà
Tipo Proprietà1 { get; set; }
Tipo Proprietà2 { get; set; }
// Metodi
Tipo Metodo1()
{
// Corpo del metodo
}
Tipo Metodo2()
{
// Corpo del metodo
}
}
Esempio di Dichiarazione:
class Persona
{
public string Nome { get; set; }
public int Età { get; set; }
public void Saluta()
{
Console.WriteLine($"Ciao, sono {Nome} e ho {Età} anni.");
}
}
Creazione di un Oggetto
Un oggetto è un’istanza di una classe. Per creare un oggetto, è necessario utilizzare l’operatore new
.
Esempio di Creazione:
Persona persona1 = new Persona();
persona1.Nome = "Alice";
persona1.Età = 30;
Accesso alle Proprietà di un Oggetto
Le proprietà di un oggetto vengono accessibili utilizzando l’operatore .
.
Esempio di Accesso:
string nomePersona = persona1.Nome;
int etàPersona = persona1.Età;
Chiamata dei Metodi di un Oggetto
I metodi di un oggetto vengono chiamati utilizzando l’operatore .
.
Esempio di Chiamata:
persona1.Saluta();
Costruttori
Un costruttore è un metodo speciale utilizzato per inizializzare un oggetto al momento della sua creazione. In C#, è possibile dichiarare uno o più costruttori all’interno della classe.
Esempio di Costruttore:
class Persona
{
public string Nome { get; set; }
public int Età { get; set; }
public Persona(string nome, int età)
{
Nome = nome;
Età = età;
}
public void Saluta()
{
Console.WriteLine($"Ciao, sono {Nome} e ho {Età} anni.");
}
}
Persona persona2 = new Persona("Bob", 25);
Costruttori Sovraccaricati
È possibile dichiarare costruttori sovraccaricati, ovvero costruttori con diverse firme, per consentire diverse modalità di inizializzazione dell’oggetto.
Esempio di Overload:
class Persona
{
public string Nome { get; set; }
public int Età { get; set; }
public Persona(string nome, int età)
{
Nome = nome;
Età = età;
}
public Persona(string nome)
{
Nome = nome;
Età = 0;
}
public void Saluta()
{
Console.WriteLine($"Ciao, sono {Nome} e ho {Età} anni.");
}
}
Persona persona3 = new Persona("Charlie");
Conclusione
Le classi e gli oggetti sono fondamentali nella programmazione orientata agli oggetti. Abbiamo esaminato come dichiarare classi, definire proprietà e metodi, creare oggetti, accedere alle proprietà e chiamare i metodi. Abbiamo anche esaminato l’uso dei costruttori per inizializzare gli oggetti al momento della creazione, inclusi i costruttori sovraccaricati per offrire flessibilità nelle opzioni di inizializzazione. Utilizzando il concetto di classi e oggetti, è possibile creare programmi più organizzati e modulari.