dart try-catch
try {
// ...
} on SomeException catch(e) {
//Handle exception of type SomeException
} catch(e) {
//Handle all other exceptions
}
dart try-catch
try {
// ...
} on SomeException catch(e) {
//Handle exception of type SomeException
} catch(e) {
//Handle all other exceptions
}
dart try catch
try {
breedMoreLlamas();
} on OutOfLlamasException { // A specific exception
buyMoreLlamas();
} on Exception catch (e) { // Anything else that is an exception
print('Unknown exception: $e');
} catch (e) { // No specified type, handles all
print('Something really unknown: $e');
} finally { // Always clean up, even if case of exception
cleanLlamaStalls();
}
dart try
HOW TO HANDLE EXCEPTIONS IN DART/FLUTTER!
# ------------------------ CASE 1: --------------------------- #
When you know the exception to be thrown, use ON Clause
try {
int result = 12 ~/ 0;
print("The result is $result");
} on IntegerDivisionByZeroException {
print("Cannot divide by Zero");
}
# ------------------------ CASE 2: --------------------------- #
When you do not know the exception use CATCH Clause
try {
int result = 12 ~/ 0;
print("The result is $result");
} catch (e) {
print("The exception thrown is $e");
}
# ------------------------ CASE 3: --------------------------- #
Using STACK TRACE to know the events that occurred before the
Exception was thrown (trace and print the code steps after the
error)
try {
int result = 12 ~/ 0;
print("The result is $result");
} catch (e, s) {
print("The exception thrown is $e");
print("STACK TRACE \n $s");
}
# ------------------------ CASE 4: --------------------------- #
Whether there is an Exception or not, FINALLY Clause is always
Executed
try {
int result = 12 ~/ 3;
print("The result is $result");
} catch (e) {
print("The exception thrown is $e");
} finally {
print("This is FINALLY Clause and is always executed.");
}
# ------------------------ CASE 5: --------------------------- #
Custom Exception.The throw keyword is used to explicitly raise
an exception, and, in this case, that exception was defined by
the following exemple:
void main(){
try {
depositMoney(-200);
} catch (e) {
print(e.errorMessage());
} finally {
// Code
}
}
class DepositException implements Exception {
String errorMessage() {
return "You cannot enter amount less than 0";
}
}
void depositMoney(int amount) {
if (amount < 0) {
throw new DepositException();
}
}
try except flutter
try {
print(x);
} on Exception catch (_) {
print('never reached');
}
Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us