Witam
Niedawno rozpocząłem naukę C#. Jestem na etapie zrozumienia właściwości.
W większości kursów, które przeczytałem właściwości są opisane jako sposób na dostęp do prywatnych zmiennych w ramach danej klasy i kontrolę wprowadzanych wartości.
I przykładowo postawiłem przed sobą zadanie do zrealizowania.
Zadanie polega na tym, że:
- Wprowadzam wartość z klawiatury.
- Przypisuję do zmiennej w stworzonej klasie poprzez odwołanie się do właściwości.
- Jeśli wprowadzona wartość jest liczbą to przypisuję ją do zmiennej prywatnej w klasie i następnie wykonuję kolejną metodę, która wykonuje proste dodawanie.
- Jeśli wprowadzona wartość nie jest liczbą to wyświetlam komunikat proszący o ponowne wprowadzenie wartości. Tutaj program powinien wrócić do punktu 1 i wykonać całą sekwencję zdarzeń od początku. Mam jednak z tym problem.
Spójrzcie proszę na poniższy kod i dajcie wskazówki jak to można poprawnie wykonać.
class nauka
{
private string _a;
private string val;
private int val2;
private bool is_int;
public string A
{
get { return _a; }
set
{
if ((is_int = Int32.TryParse(value, out val2)))
{ _a = value;}
else
{
Console.WriteLine("Wprowadź ponownie poprawną wartość:");
nauka wprowadza = new nauka();
wprowadza.A = Console.ReadLine();
}
}
}
public int dodawnie()
{return Int32.Parse(_a) + Int32.Parse(_a);}
}
class Program
{
static void Main(string[] args)
{
nauka dodawanie = new nauka();
string val = Console.ReadLine();
dodawanie.A = val;
Console.WriteLine("Wynik dodawania:" + dodawanie.dodawnie());
Console.ReadKey();
}
}