"String"类型的值不能分配给"Hero"类型的变量

Dmi*_*kov 2 dart angular-dart

我正在学习飞镖.当我写下一个代码时:

class Hero 
{
    String name;

    Hero(this.name);
}

class AppComponent
{
    String title = 'header';
    Hero hero = 'Windstorm';
}


Hero hero = new Hero('test');
Run Code Online (Sandbox Code Playgroud)

我收到了错误: A value of type 'String' cannot be assigned to a variable of type 'Hero'.

我做错了什么?

小智 8

问题似乎在于这一行:

Hero hero = 'Windstorm';
Run Code Online (Sandbox Code Playgroud)

英雄是英雄型.'Windstorm'是String类型.所以不能像那样分配给对方.

你可以试试这个:

Hero hero = new Hero('Windstorm');
Run Code Online (Sandbox Code Playgroud)

就像你在"测试"的最后一行中所做的那样.

如果Hero类的构造函数将字符串作为参数,那么它将起作用.