📢 Nuovo Corso Laravel API disponibile!

Esercizi Modificatori di aAccesso in C#

Ecco degli esercizi semplici con soluzione per praticare l’utilzzo degli modificatori di accesso delle classi in C#.

Esercizio 1

Dichiarare una classe chiamata "Persona" con una variabile privata "nome" e un metodo pubblico "StampaNome" che stampa il nome.
class Persona
{
private string nome;
public void StampaNome()
{
Console.WriteLine("Nome: " + nome);
}
}

Esercizio 2

Aggiungere un costruttore pubblico alla classe "Persona" per impostare il valore della variabile "nome" all'inizializzazione dell'oggetto.
class Persona
{
private string nome;
public Persona(string nome)
{
this.nome = nome;
}
public void StampaNome()
{
Console.WriteLine("Nome: " + nome);
}
}
// Esempio di utilizzo del costruttore
Persona persona = new Persona("Mario");
persona.StampaNome();

Esercizio 3

Aggiungere una proprietĂ  pubblica chiamata "Eta" alla classe "Persona" per consentire la lettura e la scrittura dell'etĂ  della persona.
class Persona
{
private string nome;
public Persona(string nome)
{
this.nome = nome;
}
public void StampaNome()
{
Console.WriteLine("Nome: " + nome);
}
}
// Esempio di utilizzo del costruttore
Persona persona = new Persona("Mario");
persona.StampaNome();

Esercizio 4

Aggiungere un metodo privato chiamato "CalcolaAnnoDiNascita" alla classe "Persona" per calcolare l'anno di nascita basato sull'etĂ  corrente.
class Persona
{
private string nome;
public int Eta { get; set; }
public Persona(string nome)
{
this.nome = nome;
}
public void StampaNome()
{
Console.WriteLine("Nome: " + nome);
}
private int CalcolaAnnoDiNascita()
{
int annoCorrente = DateTime.Now.Year;
return annoCorrente - Eta;
}
}
// Esempio di utilizzo del metodo privato
Persona persona = new Persona("Mario");
persona.Eta = 30;
int annoDiNascita = persona.CalcolaAnnoDiNascita();
Console.WriteLine("Anno di nascita: " + annoDiNascita);

Esercizio 5

Dichiarare una classe "Banca" con un campo privato "saldo" e un metodo pubblico "VisualizzaSaldo" che stampa il saldo disponibile.
class Banca
{
private decimal saldo;
public void VisualizzaSaldo()
{
Console.WriteLine("Saldo: " + saldo);
}
}

Esercizio 6

Aggiungere un metodo protetto chiamato "PrelevaDenaro" alla classe "Banca" per consentire il prelievo di denaro dal saldo.
class Banca
{
private decimal saldo;
public void VisualizzaSaldo()
{
Console.WriteLine("Saldo: " + saldo);
}
protected void PrelevaDenaro(decimal importo)
{
saldo -= importo;
}
}
// Esempio di utilizzo del metodo protetto
Banca banca = new Banca();
banca.VisualizzaSaldo();
banca.PrelevaDenaro(100);
banca.VisualizzaSaldo();

Esercizio 7

Creare una classe "Prodotto" con un campo interno "prezzo" e un metodo interno "CalcolaSconto" per calcolare lo sconto sul prezzo del prodotto.
class Prodotto
{
private decimal prezzo;
public void VisualizzaPrezzo()
{
Console.WriteLine("Prezzo: " + prezzo);
}
internal decimal CalcolaSconto(decimal scontoPercentuale)
{
decimal sconto = prezzo * scontoPercentuale / 100;
return prezzo - sconto;
}
}
// Esempio di utilizzo del metodo interno
Prodotto prodotto = new Prodotto();
prodotto.VisualizzaPrezzo();
decimal prezzoScontato = prodotto.CalcolaSconto(10);
Console.WriteLine("Prezzo scontato: " + prezzoScontato);

Esercizio 8

Creare una classe "Cancello" con un campo protetto "aperto" e un metodo protetto "StatoCancello" per visualizzare lo stato attuale del cancello.
class Cancello
{
protected bool aperto;
protected void StatoCancello()
{
if (aperto)
Console.WriteLine("Il cancello è aperto.");
else
Console.WriteLine("Il cancello è chiuso.");
}
}
// Esempio di utilizzo del metodo protetto
Cancello cancello = new Cancello();
cancello.StatoCancello();

Esercizio 9

Creare una classe "Database" con un campo privato "connessione" e un metodo privato "ConnettiDatabase" per stabilire la connessione al database.
class Database
{
private string connessione;
private void ConnettiDatabase()
{
// Codice per stabilire la connessione al database
}
}

Esercizio 10

Creare una classe "Utente" con un campo interno "username" e un metodo interno "ValidaPassword" per verificare la correttezza della password inserita dall'utente.
class Utente
{
internal string username;
internal bool ValidaPassword(string password)
{
// Codice per validare la password
}
}