5.11. Introdução à programação orientada a objetos em Dart: Tratamento de exceções

Página 67

A programação orientada a objetos (POO) é um paradigma de programação que utiliza objetos e suas interações para projetar aplicações e programas de software. Dart, a linguagem de programação usada no Flutter, também suporta a POO. Este artigo irá introduzir o conceito de tratamento de exceções na programação orientada a objetos em Dart.

Na programação, uma exceção é um evento anormal que ocorre durante a execução do programa e interrompe o fluxo normal do programa. O tratamento de exceções é um mecanismo para lidar com erros e exceções de forma controlada.

Em Dart, o tratamento de exceções é feito usando os blocos try, catch e finally. O bloco 'try' é usado para envolver o código que pode potencialmente lançar uma exceção. O bloco 'catch' é usado para capturar e lidar com a exceção, se ocorrer uma. O bloco 'finally' é usado para executar código, independentemente de uma exceção ter sido lançada ou não.

Tratamento de exceções em Dart

Aqui está um exemplo de como o tratamento de exceções é feito em Dart:

try {
  // código que pode lançar uma exceção
} catch (e) {
  // lidar com a exceção
} finally {
  // código que será executado independentemente de uma exceção ter sido lançada ou não
}

O bloco 'try' contém o código que pode lançar uma exceção. Se uma exceção for lançada, a execução do bloco 'try' é interrompida e o controle é passado para o bloco 'catch'. O bloco 'catch' é usado para lidar com a exceção. O bloco 'finally' é executado independentemente de uma exceção ter sido lançada ou não.

Exemplo de Tratamento de Exceções

Vamos considerar um exemplo onde estamos tentando dividir um número por zero. Sabemos que a divisão por zero é indefinida e, portanto, isso lançará uma exceção.

void main() {
  int num1 = 10;
  int num2 = 0;
  int result;

  try {
    result = num1 ~/ num2;
    print('O resultado é $result');
  } catch (e) {
    print('Exceção Capturada: Divisão por Zero');
  } finally {
    print('Este é o bloco Finally e será sempre executado.');
  }
}

Neste exemplo, a divisão por zero lança uma exceção. Como estamos capturando a exceção no bloco 'catch', a exceção é tratada e o programa não é interrompido. O bloco 'finally' é executado independentemente de uma exceção ter sido lançada ou não.

Tipos de Exceções em Dart

Dart fornece muitos tipos de exceções incorporadas, como IntegerDivisionByZeroException, IOException, TimeoutException, etc. Também podemos definir nossas próprias exceções personalizadas criando uma nova classe de exceção.

Conclusão

O tratamento de exceções é um aspecto crucial da programação orientada a objetos em Dart. Ele permite que lidemos com erros e exceções de forma controlada, sem interromper o fluxo normal do programa. Dart fornece vários blocos e tipos de exceções para lidar com diferentes cenários de erro.

Entender o tratamento de exceções é essencial para criar aplicativos robustos e resilientes em Flutter usando Dart. Isso nos permite criar uma experiência de usuário suave, lidando com possíveis erros e exceções de maneira eficiente.

Now answer the exercise about the content:

Qual é a função do bloco 'finally' no tratamento de exceções em Dart?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

685.12. Introdução à programação orientada a objetos em Dart: Coleções

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text