Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Faça como eu fiz: Classes e heranças

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Olá, Gabriel!

Primeiro, você precisa criar as classes. No exemplo do exercício, temos diferentes tipos de alimentos, então poderíamos ter uma classe "Alimento" geral e então classes específicas para cada tipo de alimento, como "Macadâmia", "Banana", "Macaxeira" e "Limão". Veja o exemplo:

class Alimento {
  double peso;
  String cor;

  Alimento(this.peso, this.cor);

  void mostrarDados() {
    print('Este(a) ${runtimeType} pesa $peso gramas e é $cor.');
  }
}

class Macadamia extends Alimento {
  Macadamia(double peso, String cor) : super(peso, cor);
}

class Banana extends Alimento {
  Banana(double peso, String cor) : super(peso, cor);
}

class Macaxeira extends Alimento {
  Macaxeira(double peso, String cor) : super(peso, cor);

  void cozinhar() {
    print('Pronto, a $runtimeType está cozinhando!');
  }
}

class Limao extends Alimento {
  Limao(double peso, String cor) : super(peso, cor);

  void fazerSuco() {
    print('Você fez um ótimo suco de $runtimeType!');
  }
}

Nesse exemplo, a classe Alimento é a classe mãe, e as outras são subclasses que herdam as características de Alimento. Note que cada subclasse pode ter métodos próprios, como cozinhar na classe Macaxeira e fazerSuco na classe Limao.

Depois de criar as classes, você pode criar objetos e chamar os métodos:

void main() {
  Macadamia macadamia = Macadamia(2.0, 'Branco Amarelado');
  Banana banana = Banana(75.0, 'Amarela');
  Macaxeira macaxeira = Macaxeira(1200.0, 'Marrom');
  Limao limao = Limao(100.0, 'Verde');

  macadamia.mostrarDados();
  banana.mostrarDados();
  macaxeira.mostrarDados();
  macaxeira.cozinhar();
  limao.mostrarDados();
  limao.fazerSuco();
}

Espero que isso esclareça suas dúvidas sobre como criar classes e heranças no Dart. Lembre-se de que a prática é a chave para o aprendizado, então continue praticando!

Espero ter ajudado e bons estudos!