Pular para o conteúdo principal

static_access_to_instance_member

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

Instance member '{0}' can't be accessed using static access.

Descrição

#

O analisador produz este diagnóstico quando o nome de uma classe é usado para acessar um campo de instância. Campos de instância não existem na classe; eles existem apenas em uma instância da classe.

Exemplo

#

O código a seguir produz este diagnóstico porque x é um campo de instância:

dart
class C {
  static int a = 0;
​
  int b = 0;
}
​
int f() => C.b;

Correções comuns

#

Se você pretende acessar um campo estático, então troque o nome do campo por um campo estático existente:

dart
class C {
  static int a = 0;
​
  int b = 0;
}
​
int f() => C.a;

Se você pretende acessar o campo de instância, então use uma instância da classe para acessar o campo:

dart
class C {
  static int a = 0;
​
  int b = 0;
}
​
int f(C c) => c.b;

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ê.