据我了解,Object 类是所有类的基类,除了那些允许 null 的类。另外,正如我从 dart.dev 站点上的文档中了解到的,Null 类型位于 Object 类层次结构之外。
但我无法理解以下奇怪现象的原因。
例如,runtimeType getter 定义在 Object 类中,但该 getter 不存在于 Null 类中。同时,文档https://api.dart.dev/stable/2.18.4/dart-core/Null-class.html指出runtimeType是继承的。但不清楚是谁说的?如果来自 Object 类型,那么为什么 Object 类不指示 getter 被重写或继承https://api.dart.dev/stable/2.18.2/dart-core/Object-class.html。同样在 IDE 中,当您跳转到变量“Null a = null”的 getter 定义时,它会跳转到 Object.h 中的 getter 定义。
这就引出了一个问题,Null 是 Object 的子类型吗?
我想了解Null、Object之间的关系。
dart ×1