0Pricing
Dart Academy · Aula

Getters e setters

Exponha propriedades calculadas e protegidas.

Getters e setters é uma aula grátis de Dart Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Dart Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Dart Academy inclui 4 aulas no total.

Além dos campos simples

Às vezes, você quer uma propriedade calculada ou protegida. O Dart oferece acessores e definidores para controlar como um valor é lido e escrito.

O que é um acessor

Um acessor parece um campo externamente, mas executa código para produzir seu valor. Use a palavra-chave de obtenção para defini-lo.

int get area => width * height;

Acessores calculam valores

Um acessor é perfeito para valores derivados de outros campos. Leia-o com a notação de ponto simples, sem precisar de parênteses.

class Box {
  int w = 2, h = 3;
  int get area => w * h;
}

Chamando um acessor

Acesse um acessor exatamente como acessaria um campo. O código interno é executado todas as vezes, portanto ele sempre reflete os dados mais recentes.

var b = Box();
print(b.area); // 6

O que é um definidor

Um definidor executa código quando você atribui um valor. Defina-o com a palavra-chave de definição e um único parâmetro para receber a entrada.

set width(int value) {
  _w = value;
}

Definidores protegem as entradas

Um definidor pode validar os dados antes de armazená-los. Rejeite dados inválidos, limite intervalos ou registre alterações diretamente na atribuição.

set age(int v) {
  if (v >= 0) _age = v;
}

Campos privados de suporte

Nomes que começam com sublinhado são privados na biblioteca. Um definidor geralmente protege um campo privado de suporte, como _age.

int _age = 0;
int get age => _age;

Chamando um definidor

Atribua a um definidor como faria com um campo, usando o sinal de igual. O Dart encaminha essa atribuição para seu código de proteção.

var p = Person();
p.age = 25;

Acessor sem definidor

Defina apenas um acessor para criar uma propriedade somente leitura. O código externo pode lê-la, mas nunca pode atribuir um valor a ela.

String get fullName => "$first $last";

Por que usar acessores e definidores

Eles permitem alterar o armazenamento interno mais tarde sem quebrar quem chama o código. A propriedade pública permanece igual, enquanto a lógica fica oculta por trás dela. 🔐

Exemplo de propriedade calculada

Um acessor é excelente para formatação. Combine campos em uma string amigável que os chamadores leem como qualquer propriedade comum.

String get label => "$name: $score pts";

Verificação rápida

Você quer uma propriedade que outras pessoas possam ler, mas nunca atribuir. O que você define?

Recapitulação: acessores e modificadores

Você aprendeu que os acessores calculam e expõem valores, os modificadores protegem as atribuições e, juntos, ocultam os detalhes internos de forma organizada. 🎉

Perguntas Frequentes

A aula “Getters e setters” é grátis?

Sim — o texto completo de “Getters e setters” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Dart Academy, atualize para CoddyKit PRO. O curso de Dart Academy inclui 4 aulas no total.

O que vou aprender em “Getters e setters”?

Exponha propriedades calculadas e protegidas. Você pratica Dart Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Dart Academy?

Nenhuma experiência prévia é necessária. Dart Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Getters e setters”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Dart Academy?

Sim. Cada aula de Dart Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Definir uma classe com campos
  2. Métodos de instância e this
  3. Getters e setters
  4. Membros estáticos e constantes de classe
← Voltar para Dart Academy