C# exception handling ⚠️

Поделиться
HTML-код
  • Опубликовано: 27 сен 2024

Комментарии • 43

  • @BroCodez
    @BroCodez  3 года назад +17

    using System;
    namespace MyFirstProgram
    {
    class Program
    {
    static void Main(string[] args)
    {
    // exception = errors that occur during execution
    // try = try some code that is considered "dangerous"
    // catch = catches and handles exceptions when they occur
    // finally = always executes regardless if exception is caught or not
    int x;
    int y;
    double result;
    try
    {
    Console.Write("Enter number 1: ");
    x = Convert.ToInt32(Console.ReadLine());
    Console.Write("Enter number 2: ");
    y = Convert.ToInt32(Console.ReadLine());
    result = x / y;
    Console.WriteLine("result: " + result);
    }
    catch (FormatException e)
    {
    Console.WriteLine("Enter ONLY numbers PLEASE!");
    }
    catch (DivideByZeroException e)
    {
    Console.WriteLine("You can't divide by zero! IDIOT!");
    }
    catch (Exception e)
    {
    Console.WriteLine("Something went wrong!");
    }
    finally
    {
    Console.WriteLine("Thanks for visiting!");
    }
    Console.ReadKey();
    }
    }
    }

  • @housseinhoussein4575
    @housseinhoussein4575 10 месяцев назад +16

    bro i watched your code since 3 year ago and i will be graduated soon you helped me so much in the university thanks so much

  • @kylefreeman8084
    @kylefreeman8084 Год назад +17

    "Not considered good practice" Someone should tell Microsoft, omfg.

  • @dumbbo123
    @dumbbo123 Год назад +6

    one point is that we can also make use of e.Message to show what the actual exception error occurred. awesome video bro code🙂

  • @mherman90
    @mherman90 Год назад +15

    Bro, what about using the general Exception catch all and then you can use e.Message and do something like this:
    catch (Exception e)
    {
    Console.WriteLine("something went wrong: " + e.Message);
    }
    and you will have one exception writing out the specifics in the Message property.

  • @25dall
    @25dall 7 месяцев назад

    Think you are gonna help me alot in my education - thanks for the vid ::)

  • @aballahsameh3597
    @aballahsameh3597 2 года назад +2

    you'r so good, BRO!

  • @spartanranger
    @spartanranger 3 года назад +3

    Thanks for the video Bro.

  • @spartanranger
    @spartanranger 3 года назад +7

    Oh btw is there reason why we typed "e" after exceptions ? I tried without using it and looks like program works perfectly fine.

    • @saikokamiyt
      @saikokamiyt 2 года назад +3

      I think you will already know it but if someone does not: You can add the e to your writeline Console.WriteLine($"Error: {e}"); to see what went wrong.

  • @BantuBeya
    @BantuBeya 5 месяцев назад

    You're the real Bro, Bro.👌👌

  • @EmmyCodes-d9n
    @EmmyCodes-d9n 6 месяцев назад

    Superb broski
    !

  • @vishnumaya1930
    @vishnumaya1930 Месяц назад

    Thanks

  •  3 года назад +1

    Thanks Bro!

  • @anniepunk
    @anniepunk Год назад

    Thanks for the video!

  • @youcefmantas4944
    @youcefmantas4944 Год назад

    Thanks For The Video Mate

  • @Cybershroom
    @Cybershroom 19 часов назад

    This has been super helpful, what a legend!

  • @nouchance
    @nouchance Год назад

    Amazing SIR!

  • @Lulzsek
    @Lulzsek 2 месяца назад

    Gracias hermano Call of duty

  • @mansokleaksa1787
    @mansokleaksa1787 2 года назад

    Thanks Bro🤗

  • @wayasho5284
    @wayasho5284 2 года назад

    thanks, bro.

  • @LucParent905
    @LucParent905 3 года назад +1

    I like you doggo

  • @rahellebey1009
    @rahellebey1009 6 месяцев назад

    👏🙏👌

  • @natnaelgetasew7250
    @natnaelgetasew7250 2 года назад

    Thanks bro

  • @mmisterWhite
    @mmisterWhite Год назад

    If you write good code you should not have any exceptions right? I just made my code so that there will never be exceptions if you try to do something wrobg 😅

  • @TylerHerwek
    @TylerHerwek Год назад

  • @whitedinamo
    @whitedinamo 2 года назад

    lesson check😇

  • @Blocky7352
    @Blocky7352 10 месяцев назад

    bro really just sum up 40 min video from my prof in 5 mins.

  • @mukesh6205
    @mukesh6205 11 месяцев назад

    What we can do to run from the beginning after catch the exception?

    • @OjiniKinlongi
      @OjiniKinlongi 8 месяцев назад

      I used this for it
      int number;
      int number2;
      int result;
      string re;
      bool reset = true;
      while (reset) {
      try
      {
      Console.WriteLine("Enter the number one!");
      number = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine("Enter the number one!");
      number2 = Convert.ToInt32(Console.ReadLine());
      result = number + number2;
      Console.WriteLine(result); ;
      }
      catch (FormatException e)
      {
      Console.WriteLine("Wrong input! " + e.Message);
      Console.WriteLine("Would you like to reset ? (Yes/No)");
      re = Console.ReadLine().ToLower();
      if (re == "yes")
      {
      reset = true;
      }
      else
      {
      Console.WriteLine("Thanks for using!");
      reset = false;
      }
      }
      }

  • @budderrar5751
    @budderrar5751 Год назад

    noice

  • @RyanRajesh-p8r
    @RyanRajesh-p8r 10 месяцев назад

    whats the e for?

  • @villocity5794
    @villocity5794 Год назад

    If an exception is caught and fixed how do I make the code try again from were it last was?

    • @mahersabit9265
      @mahersabit9265 Год назад

      maybe you can use an if statement? idk

    • @OjiniKinlongi
      @OjiniKinlongi 7 месяцев назад

      you can use bool date type and a loop to ensure the variables were taken in a correct format like this for example -
      int number1;
      int number2;
      bool success = false;
      while (!success) {
      try
      {
      Console.WriteLine("Enter number one");
      number1 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine();
      Console.WriteLine("Enter number two");
      number2 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine();
      Console.WriteLine($"Your total is {number1 + number2}");
      success = true;
      }catch (Exception)
      {
      Console.WriteLine("Please enter an integer");
      }
      }

    • @OjiniKinlongi
      @OjiniKinlongi 7 месяцев назад

      you can use bool date type and a loop to ensure the variables were taken in a correct format like this for example -
      int number1;
      int number2;
      bool success = false;
      while (!success) {
      try
      {
      Console.WriteLine("Enter number one");
      number1 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine();
      Console.WriteLine("Enter number two");
      number2 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine();
      Console.WriteLine($"Your total is {number1 + number2}");
      success = true;
      }catch (Exception)
      {
      Console.WriteLine("Please enter an integer");
      }
      }

  • @the_dude_josh
    @the_dude_josh 9 месяцев назад

    Random commend down below.

  • @ibnOrfi
    @ibnOrfi 2 года назад

    We can also use goto statement right? or is it not recommended? which method is better for error handling?

    • @edems131
      @edems131 2 года назад

      Tip for you: .bat sintax is bad and i dont know about good use of goto in C#

  • @SlimyMcTee
    @SlimyMcTee Год назад

    How to prevent the exception from happening at all? So instead of just stopping the program, it looped back to re asking the number. Something like:
    while (age != 'a number or something') //something that telling age must be a number otherwise it looped back
    {
    Console.WriteLine("Not a number dummy, type again!")
    age = Convert.ToInt32(Console.ReadLine());
    }
    Is that even possible?

    • @crt24501
      @crt24501 Год назад +1

      At the end of the catch, write "goto" + some name like "start again", and then just write "name you chose" and colon. When the catch is executed, and thus the error happens, it will send the code to that location.

  • @ahmedhassan5783
    @ahmedhassan5783 10 месяцев назад

    done