1
resposta

[Projeto] Tarefa implementação: classes e heranças

void main() {
Nozes macadamia = Nozes(
    nome: 'Macadâmia',
    peso: 2.0,
    cor: 'Branco amarelado',
    diasDesdeColheita: 20,
    pctOleoNatural: 50,
    sabor: 'Doce',
  );

  Fruta banana = Fruta(
    nome: 'Banana',
    peso: 75,
    cor: 'Amarela',
    diasDesdeColheita: 20,
    sabor: 'Doce',
    isMadura: true,
  );

  Citricas limao = Citricas(
    nome: 'Limão',
    peso: 100,
    cor: 'Verde',
    diasDesdeColheita: 5,
    sabor: 'Azedo',
    nivelDeAzedo: 10,
  );

  Legume macaxeira = Legume(nome: 'Macaxeira', peso: 1200, cor: 'Marrom');

  macadamia.caracteristicasAlimento();
  banana.caracteristicasAlimento();
  limao.caracteristicasAlimento();
  macaxeira.caracteristicasAlimento();

  macaxeira.cozinharLegume();
  limao.fazerSuco();
}

class Alimento {
  String nome, cor;
  double peso;

  Alimento({required this.nome, required this.peso, required this.cor});

  void caracteristicasAlimento() {
    print('Este(a) $nome pesa $peso gramas e é $cor');
  }
}

class Fruta extends Alimento {
  String sabor;
  int diasDesdeColheita;
  bool? isMadura;

  Fruta({
    required super.nome,
    required super.peso,
    required super.cor,
    required this.diasDesdeColheita,
    required this.sabor,
    this.isMadura,
  });

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

class Citricas extends Fruta {
  int nivelDeAzedo;
  Citricas({
    required super.nome,
    required super.peso,
    required super.cor,
    required super.diasDesdeColheita,
    required super.sabor,
    required this.nivelDeAzedo,
  });

  void mostrarNivelDeAzedo() {
    print('Você fez um ótimo suco de $nome');
  }
}

class Legume extends Alimento {
  bool? isPrecisaCozinhar;
  Legume({
    required super.nome,
    required super.peso,
    required super.cor,
    this.isPrecisaCozinhar,
  });

  void cozinharLegume() {
    print('Pronto! o $nome está cozinhando');
  }
}

class Nozes extends Fruta {
  double pctOleoNatural;

  Nozes(
      {required super.nome,
      required super.peso,
      required super.cor,
      required super.diasDesdeColheita,
      required super.sabor,
      required this.pctOleoNatural});
}
1 resposta

Olá Guilherme, tudo bem?

Pelo que entendi, você está trabalhando em um projeto de implementação de classes e heranças em Dart. Pude ver que você criou algumas classes que representam diferentes tipos de alimentos, como frutas, legumes e nozes. Além disso, você utilizou a herança para criar subclasses que herdam características das classes pai.

Acredito que você está no caminho certo! Parabéns por praticar com as atividades do curso.

Um abraço e bons estudos.