C# vs C++ - proprietăți
class Student
{
// Proprietate auto - implementata (cel mai frecvent folosita )
public string Nume { get; set; }
public int Varsta { get ; set; }
// Proprietate read - only
public string Grupa { get; private set; }
// Proprietate cu logica custom
private double nota ;
public double Nota
{
get { return nota ; }
set
{
if ( value < 1 || value > 10)
throw new ArgumentException (" Nota invalida !");
nota = value ;
}
}
//Constructor
public Student(string nume, int varsta, string grupa)
{
Nume = nume ;
Varsta = varsta ;
Grupa = grupa ;
}
}
// Utilizare - arata ca un acces direct la camp , dar este controlat
Student s = new Student ("Ion", 21, " 1055");
s.Nume = "Maria"; // apeleaza setter -ul
Console.WriteLine(s.Nume); // apeleaza getter -ul
s.Nota = 9.5; // trece prin validare
//s.Nota = 15; // ar arunca exceptie
Last updated