首页 > 解决方案 > 对于 Dart 初学者来说超级简单但很难的问题

问题描述

我正在努力学习 Dart 语言。以下代码似乎非常简单,但不起作用。我知道这对于专家来说可能是一个愚蠢的问题,但对我来说很难理解为什么不呢?

class Car{

  carFun(){
  
    print("Test");

  }
  
}

main(){

  Car.carFun();

}

标签: dart

解决方案


已经回答,但我会提供更多的上下文。

您需要将您的方法标记为static

static carFun(){ ...

这使得该方法可用作“类方法”;现在,正如您所定义的,它是一个“对象方法”。这意味着您需要从类中创建一个对象Car才能使用它,这将是这样的:

var myCar = new Car();
myCar.carFun();

通过这种方式,您实例化了一个对象并为它使用了定义的方法。将其标记为静态会使这种方法不起作用。这是类和对象之间的许多区别之一。


推荐阅读