Pular para o conteúdo principal

duplicate_constructor

Detalhes sobre o diagnóstico 'duplicate_constructor' produzido pelo analisador do Dart.

The constructor with name '{0}' is already defined.

The unnamed constructor is already defined.

Descrição

#

O analisador emite este diagnóstico quando uma classe declara mais de um construtor sem nome ou quando declara mais de um construtor com o mesmo nome.

Exemplos

#

O código a seguir gera este diagnóstico porque há duas declarações para o construtor sem nome:

dart
class C {
  C();
​
  C();
}

O código a seguir gera este diagnóstico porque há duas declarações para o construtor chamado m:

dart
class C {
  C.m();
​
  C.m();
}

Correções comuns

#

Se há vários construtores sem nome e todos eles são necessários, então dê um nome a todos eles, ou a todos menos um:

dart
class C {
  C();
​
  C.n();
}

Se há vários construtores sem nome e todos menos um deles são desnecessários, então remova os construtores que não são necessários:

dart
class C {
  C();
}

Se há vários construtores nomeados e todos eles são necessários, então renomeie todos menos um:

dart
class C {
  C.m();
​
  C.n();
}

Se há vários construtores nomeados e todos menos um deles são desnecessários, então remova os construtores que não são necessários:

dart
class C {
  C.m();
}

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.