unnecessary_ overrides
Detalhes sobre o diagnóstico 'unnecessary_overrides' produzido pelo analisador do Dart.
Unnecessary override.
Descrição
#O analisador emite este diagnóstico quando um membro de instância sobrescreve um membro herdado, mas apenas invoca o membro sobrescrito com exatamente os mesmos argumentos.
Exemplo
#
O código a seguir produz este diagnóstico porque o método D.m não faz nada além
de invocar o método sobrescrito:
class C {
int m(int x) => x;
}
class D extends C {
@override
int m(int x) => super.m(x);
}
Correções comuns
#Se o método deve fazer algo além do que o método sobrescrito faz, implemente a funcionalidade que falta:
class C {
int m(int x) => x;
}
class D extends C {
@override
int m(int x) => super.m(x) + 1;
}
Se o método sobrescrito deve ser modificado, alterando o tipo de retorno ou um
ou mais tipos de parâmetros, tornando um dos parâmetros covariant, adicionando
um comentário de documentação ou anotações adicionais, atualize o código:
import 'package:meta/meta.dart';
class C {
int m(int x) => x;
}
class D extends C {
@mustCallSuper
@override
int m(int x) => super.m(x);
}
Se o método que sobrescreve não altera nem aprimora a semântica do código, remova-o:
class C {
int m(int x) => x;
}
class D extends C {}
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
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ê.