【发布时间】:2018-08-25 15:23:47
【问题描述】:
我开始学习 Flutter,而 Flutter 又使用 Dart 作为其语言,所以我可以说我在同时学习两者。为此,我使用的是 Android Studio 3.0.1。
我一直在构建一个应用程序作为工作概念证明,但发现了一个让我目瞪口呆的错误。
我有一个自定义类,它是另一个包含第一个列表的类的基础。随后,此类将用于在我的应用程序中提供 ListView。
当我尝试将该自定义类的新元素添加到列表中时,我收到一条错误消息,指出我创建的列表的变量是“无效的构造函数名称”!它不应该是构造函数,所以我不明白发生了什么。
我不知道我是不是把语言的某些功能弄错了,或者我的 OOP 知识(目前有点生疏,我正在努力加快速度,毕竟我'我主要是一个 NATURAL/ADABAS 程序员)还不足以理解我做错了什么,所以任何见解都将不胜感激。
这是包含相关类的代码的 sn-p。
class Aluno {
final int numDiario;
final String nomeAluno;
final String codAluno;
Aluno ({
this.numDiario,
this.nomeAluno,
this.codAluno,
});
}
class Alunos {
final _alunos = <Aluno>[];
static int nDiario;
static int _incNumDiario(){
return nDiario++;
}
static var nAl = new WordPair.random();
static String nomeAluno = '$nAl.first $nAl.second';
Aluno aluno = new Aluno(numDiario: _incNumDiario(),nomeAluno: nomeAluno, codAluno: nDiario.toString());
_alunos.add(aluno); //Here's where the error happens!
}
这是我得到的错误:
error: Invalid constructor name. (invalid_constructor_name at [dd_movel] lib\abas\frequencia\linha_presencao.dart:32)
这是“颤振医生”的输出:
C:\Users\p001385\flutter\bin\flutter.bat --no-color doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.1.5, on Microsoft Windows [versão 6.1.7601], locale pt-BR)
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[√] Android Studio (version 3.0)
[√] Connected devices (1 available)
• No issues found!
Process finished with exit code 0
谢谢大家!
【问题讨论】:
-
类定义中只能使用静态方法或变量。您正在尝试将
Aluno添加到定义中Alunos的列表中,这不是 .可能。 -
哦!我懂了!!因此,如果我创建了一个方法并将新的 Aluno 实例添加到此方法内的列表中,它将起作用!谢谢!
标签: android oop mobile dart flutter