1
resposta

[Projeto] Lista de Exercícios - Programa de registro de funcionários

Programa de registro de funcionários

// arquivo - funcionario.dart

abstract class Funcionario {
  final String nome;
  double salarioBase;

  Funcionario(this.nome, {this.salarioBase = 3000});

  void calcularSalario() {
    print(salarioBase);
  }
}

/*
analista: salário base = salário base + salário base multiplicado por 1.2;
gerente: salário base = salário base + salário base multiplicado por 1.5;
diretor: salário base = salário base + salário base multiplicado por 2.0.
*/

class Analista extends Funcionario {
  Analista(super.nome, {super.salarioBase});

  @override
  void calcularSalario() {
    double salario = (salarioBase + (salarioBase * 1.2));
    print('Salário do Analista $nome: R\$ $salario');
  }
}

class Gerente extends Funcionario {
  Gerente(super.nome, {super.salarioBase});

  @override
  void calcularSalario() {
    double salario = (salarioBase + (salarioBase * 1.5));
    print('Salário do Gerente $nome: R\$ $salario');
  }
}

class Diretor extends Funcionario {
  Diretor(super.nome, {super.salarioBase});

  @override
  void calcularSalario() {
    double salario = (salarioBase + (salarioBase * 2.0));
    print('Salario do Diretor $nome: R\$ $salario');
  }
}

// arquivo - registro_de_funcionario.dart
import 'funcionario.dart';

void main(List<String> arguments) {
  Funcionario charles = Analista('Charles');
  charles.calcularSalario();

  Funcionario pedro = Gerente('Pedro');
  pedro.calcularSalario();

  Funcionario joao = Diretor('João');
  joao.calcularSalario();
}

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

1 resposta

Oi, Charles! Como vai?

Obrigada por compartilhar seu código com a comunidade Alura.

Gostei de como você estruturou a herança e a sobrescrita do método calcularSalario. O uso da classe abstrata Funcionario deixa o código bem organizado e facilita a manutenção.

Continue firme nos estudos.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓

bons estudos