C# exception handling ⚠️

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

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

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

    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();
    }
    }
    }

  • @definitelynotchris4776
    @definitelynotchris4776 Месяц назад +3

    Did a better job at explaining this in a 5 minute video than my proffessor did in a whole lecture!

    • @VeraJune-d5y
      @VeraJune-d5y День назад

      Same as you. I feel like my college was actually on RUclips.

  • @housseinhoussein4575
    @housseinhoussein4575 Год назад +19

    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 Год назад +21

    "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.

  • @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 года назад +4

      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.

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

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

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

    This has been super helpful, what a legend!

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

    you'r so good, BRO!

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

    Thanks for the video Bro.

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

    You're the real Bro, 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 😅

    • @farpurple
      @farpurple 8 дней назад

      Larger your code, more unstable or unpredicted behaviours, eventually it will raise exceptions.
      But actually I never saw try {} catch () {} seriously used anywhere..
      It is usually just check with if or smth

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

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

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

      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;
      }
      }
      }

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

    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 8 месяцев назад

      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 8 месяцев назад

      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");
      }
      }

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

    Thanks for the video!

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

    Superb broski
    !

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

    Thanks Bro!

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

    Thanks For The Video Mate

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

    for the algorithm as always!

  • @vishnumaya1930
    @vishnumaya1930 3 месяца назад

    Thanks

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

    Amazing SIR!

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

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

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

    thanks, bro.

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

    Gracias hermano Call of duty

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

    Thanks Bro🤗

  • @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#

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

    I like you doggo

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

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

    Thanks bro

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

    👏🙏👌

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

    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.

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

    lesson check😇

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

    done

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

    noice

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

    Random commend down below.

  • @Sorosh-l7z
    @Sorosh-l7z Месяц назад

    Lol 😅