Não está pegando o execption com meu código.
using _07_ByteBank;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _07_Execptions
{
class Program
{
static void Main(string[] args)
{
try
{
Metodo();
}
catch (DivideByZeroException erro)
{
Console.Write("Não é possível dividir por zero.");
}
catch (Exception erro)
{
Console.WriteLine(erro.Message);//mostra mensagem do erro
Console.WriteLine(erro.StackTrace);//mostra o caminho do erro
Console.Write("Aconteceu um erro!");
}
Console.ReadLine();
}
private static void Metodo()
{
TestaDivisao(0);
}
private static void TestaDivisao(int valorDivisor)
{
int resultado = Dividir(10, valorDivisor);
Console.WriteLine("O valor de 10 por " + valorDivisor + " é igual a " + resultado);
}
private static int Dividir(int numero, int divisor)
{
ContaCorrente conta = null;//para fazer o teste de nullReference
Console.WriteLine(conta.Saldo);//para fazer o teste de nullReference
return numero / divisor;
}
}
}
Depois tentei usar o código da aula mas também está dando o mesmo erro de não encontrar o execptionNull
static void Main(string[] args)
{
try
{
Metodo();
}
catch (DivideByZeroException erro)
{
Console.WriteLine("Não é possível divisão por zero.");
}
catch (Exceptiopn erro)
{
Console.WriteLine(erro.Message);
Console.WriteLine(erro.StackTrace);
Console.WriteLine("Aconteceu um erro!);
}
Console.ReadLine();
}
// Teste com a cadeia de chamada:
// Metodo -> TestaDivisao -> Dividir
private static void Metodo()
{
TestaDivisao(0);
}
private static void TestaDivisao(int divisor)
{
int resultado = Dividir(10, divisor);
Console.WriteLine("Resultado da divisão de 10 por " + divisor + " é " + resultado);
}
private static int Dividir(int numero, int divisor)
{
ContaCorrente conta = null;
//Console.WriteLine(conta.Saldo);
return numero / divisor;
}