Exemple #1
0
 public void Accelerate(int delta)
 {
     if (delta < 0)
     {
         throw new
               ArgumentOutOfRangeException("delta", "Speed must be greater than zero!");
     }
     if (carIsDead)
     {
         Console.WriteLine("{0} is out of order...", PetName);
     }
     else
     {
         CurrentSpeed += delta;
         if (CurrentSpeed > MaxSpeed)
         {
             CurrentSpeed = 0;
             carIsDead    = true;
             CarlsDeadException ex =
                 new CarlsDeadException(string.Format("{0} is overheated!", PetName),
                                        "You have a lead foot", DateTime.Now);
             ex.HelpLink = "https://CarsRus.com";
             throw ex;
         }
         else
         {
             Console.WriteLine("-> CurrentSpeed = {0}", CurrentSpeed);
         }
     }
 }
Exemple #2
0
        // Проверить, не перегрелся ли автомобиль.
        public void Accelerate(int delta)
        {
            if (delta < 0)
            {
                throw new
                      // Скорость должна быть больше нуля!
                      ArgumentOutOfRangeException("delta", "Speed must be greater than zero!");
            }
            CarlsDeadException ex =
                new CarlsDeadException(string.Format("{0} has overheated!", PetName),
                                       "You have a lead foot", DateTime.Now);

            ex.HelpLink = "http://www.CarsRUs.com";
            throw ex;
            if (carIsDead)
            {
                Console.WriteLine("{0} is out of order...", PetName);
            }
            else
            {
                CurrentSpeed += delta;
                if (CurrentSpeed >= MaxSpeed)
                {
                    CurrentSpeed = 0;
                    carIsDead    = true;
                    // Создать локальную переменную перед генерацией объекта Exception,
                    // чтобы можно было обращаться к свойству HelpLink.

                    /* Exception ex =
                     * new Exception(string.Format("{0} has overheated!", PetName));
                     * ex.HelpLink = "http://www.CarsRUs.com";*/

                    // Указать специальные данные, касающиеся ошибки.
                    ex.Data.Add("TimeStamp",
                                string.Format("The car exploded at {0}", DateTime.Now)); // метка времени
                    ex.Data.Add("Cause", "You have a lead foot.");                       // причины
                    throw ex;
                }
                else
                {
                    Console.WriteLine("-> CurrentSpeed = {0}", CurrentSpeed); // Вывод текущей скорости
                }
            }
        }