Сгенерировать простое исключение в свойстве - C#

Узнай цену своей работы

Формулировка задачи:

В классе Сlass1 есть переменная int _RegNumber, (и еще одна переменная для имени организации, конструктор...) и мне нужно в свойстве для этой переменной (_RegNumber) в методе сет бросить исключение, если присваиваемое значение меньше или равно 0; при создании объекта-исключения использовать один из определенных в библиотеке CLR классов-исключений, инициализировать объект-исключение с помощью конструктора с параметром типа string. На счет конструктора я не понял... Объясните пожалуйста. А класс исключение взял try/catch Я примерно задание понимаю так
public int RegNumber
        {
            get { return _RegNumber; }
            set 
            {
                if (_RegNumber <= 0) { Exception e = new Exception("Номер не подходит!"); }
                try
                {
                    _RegNumber = value;
                }
 
                catch(Exception e)
                {
                    Console.WriteLine(e);
                }
            }
        }
В мейне
 Class1 object1 = new Class1 ("ИмяОрганизации",0);
            Console.WriteLine(object1.RegNumber);
Но мне не выводит мое исключение. А просто 0. Помогите пожалуйста разоьраться

Решение задачи: «Сгенерировать простое исключение в свойстве»

textual
Листинг программы
class Class1 {
      int _RegNumber;
 
        public int RegNumber {
          get { return _RegNumber; }
          set {            
               try {
                if (value <= 0) throw new ArgumentOutOfRangeException();
                _RegNumber = value;
               }           
              catch (ArgumentOutOfRangeException) {
                  throw;                 
              }
           }
        }
    }
 
 
    class Program
    {
        static void Main(string[] args)
        {
            Class1 object1 = new Class1 ();
            try
            {
                object1.RegNumber = 0; // задаем не верное значение
            }
 
            catch (ArgumentOutOfRangeException)
            {
                Console.WriteLine("Номер не подходит!");
                // далее исправляем ошибку ввода
            }
 
            Console.ReadKey();
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.333 из 5
Похожие ответы