推荐答案
在 Dart 中,抛出异常使用 throw 关键字。你可以抛出任何对象作为异常,但通常推荐抛出 Exception 或其子类的实例。
void checkAge(int age) {
if (age < 18) {
throw Exception('Age must be 18 or older.');
}
}本题详细解读
1. 抛出异常的基本语法
在 Dart 中,抛出异常的基本语法是使用 throw 关键字,后面跟随要抛出的异常对象。异常可以是任何对象,但通常使用 Exception 类或其子类。
throw Exception('This is an exception message.');2. 抛出内置异常
Dart 提供了一些内置的异常类,如 ArgumentError、RangeError、StateError 等。你可以直接使用这些异常类来抛出特定类型的异常。
void validateInput(String input) {
if (input.isEmpty) {
throw ArgumentError('Input cannot be empty.');
}
}3. 自定义异常
你也可以创建自定义的异常类,通常是通过继承 Exception 类来实现。
// www.javascriptcn.com code example
class CustomException implements Exception {
final String message;
CustomException(this.message);
@override
String toString() => 'CustomException: $message';
}
void throwCustomException() {
throw CustomException('This is a custom exception.');
}4. 抛出异常的使用场景
抛出异常通常用于处理程序中的错误情况,例如输入验证、状态检查等。通过抛出异常,可以将错误信息传递给调用者,并由调用者决定如何处理这些错误。
void processRequest(Map<String, dynamic> request) {
if (!request.containsKey('id')) {
throw StateError('Request must contain an id.');
}
// 继续处理请求
}5. 捕获异常
抛出异常后,通常需要使用 try-catch 语句来捕获并处理异常。
try {
checkAge(15);
} catch (e) {
print('Caught an exception: $e');
}通过这种方式,你可以在 Dart 中有效地抛出和处理异常,确保程序的健壮性和可维护性。