Skip to content

关键字

Dart 提供了一组保留关键字,用于定义语言的基本结构和语法。以下是关键字的分类及其作用:

声明相关的关键字

这些关键字用于声明变量、类、函数、枚举等。

  • 变量声明

    • var:声明变量,可以自动推断类型。
    • final:声明运行时不可更改的变量(运行时常量)。
    • const:声明编译时不可更改的变量(编译时常量)。
    • late:声明稍后初始化的变量,常用于延迟初始化。

    示例:

    dart
    var name = 'Dart';       // 自动推断为 String 类型
    final age = 30;          // 一旦赋值不可更改
    const pi = 3.14;         // 编译时常量
    late String description; // 延迟初始化
  • 类与对象

    • class:声明类。
    • abstract:定义抽象类。
    • extends:表示继承父类。
    • implements:实现接口。
    • with:表示混入(Mixin)。

    示例:

    dart
    abstract class Animal {
      void eat();
    }
    
    class Dog extends Animal {
      @override
      void eat() {
        print('Dog is eating');
      }
    }
  • 枚举

    • enum:定义枚举类型。

    示例:

    dart
    enum Color { red, green, blue }

控制流相关的关键字

这些关键字用于控制代码的执行流程。

  • 条件控制

    • ifelse:条件语句。
    • switchcasedefault:选择语句。

    示例:

    dart
    if (true) {
      print('Condition is true');
    } else {
      print('Condition is false');
    }
    
    var color = 'red';
    switch (color) {
      case 'red':
        print('It is red');
        break;
      default:
        print('Unknown color');
    }
  • 循环控制

    • forwhiledo:循环语句。
    • break:跳出循环或 switch。
    • continue:跳过当前循环的剩余部分,直接进入下一次循环。

    示例:

    dart
    for (var i = 0; i < 5; i++) {
      if (i == 3) continue;
      print(i); // 输出 0, 1, 2, 4
    }
  • 异常控制

    • trycatchfinally:异常处理。
    • throw:抛出异常。

    示例:

    dart
    try {
      throw Exception('An error occurred');
    } catch (e) {
      print(e);
    } finally {
      print('This always runs');
    }

函数相关的关键字

这些关键字用于定义和操作函数。

  • 定义函数

    • void:声明无返回值的函数。
    • return:用于返回值。

    示例:

    dart
    void sayHello() {
      print('Hello');
    }
    
    int add(int a, int b) {
      return a + b;
    }
  • 异步函数

    • async:标记异步函数。
    • await:等待异步操作完成。
    • yield:生成一个值,用于生成器函数。

    示例:

    dart
    Future<void> fetchData() async {
      var data = await Future.delayed(Duration(seconds: 1), () => 'Data loaded');
      print(data);
    }

类型相关的关键字

  • 动态类型

    • dynamic:声明动态类型,类型在运行时确定。
    • var:自动推断类型。
  • 静态类型

    • 使用显式类型(如 intString 等)声明变量。

    示例:

    dart
    dynamic x = 'Hello'; // 类型可变
    var y = 42;         // 类型推断为 int
    String name = 'Dart'; // 明确声明类型

其他关键字

  • 访问控制

    • this:引用当前对象。
    • super:调用父类的方法或构造函数。

    示例:

    dart
    class Parent {
      void greet() {
        print('Hello from Parent');
      }
    }
    
    class Child extends Parent {
      @override
      void greet() {
        super.greet(); // 调用父类方法
        print('Hello from Child');
      }
    }
  • 特殊用途

    • new:创建对象(可选,通常省略)。
    • is:类型检查。
    • as:类型转换。
    • null:表示空值。

    示例:

    dart
    var obj = 'Hello';
    if (obj is String) {
      print('It is a String');
    }
  • 其他

    • importexport:用于引入和导出库。
    • assert:断言,用于调试。

    示例:

    dart
    int number = 10;
    assert(number > 0, 'Number must be positive');
编程洪同学服务平台是一个广泛收集编程相关内容和资源,旨在满足编程爱好者和专业开发人员的需求的网站。无论您是初学者还是经验丰富的开发者,都可以在这里找到有用的信息和资料,我们将助您提升编程技能和知识。
专业开发
高端定制
售后无忧
站内资源均为本站制作或收集于互联网等平台,如有侵权,请第一时间联系本站,敬请谅解!本站资源仅限于学习与参考,严禁用于各种非法活动,否则后果自行负责,本站概不承担!