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

Faça como eu fiz: encapsulamento

transporte.dart

enum Transporte { carro, bike, onibus, andando, skate, aviao, patins, trem }

viagem.dart

import 'transporte.dart';

class Viagem {
  static String codigoTrabalho = 'ALR007';
  double dinheiro = 0;
  int _totalLocaisVisitados = 0;
  Transporte locomocao;
  Set<String> registrosVisitados = <String>{};
  Map<String, dynamic> registrarPrecos = {};

  Viagem(this.locomocao);

  void escolherMeioTransporte(Transporte locomocao) {
    switch (locomocao) {
      case Transporte.carro:
        print('Vou de carro para aventura.');
        break;
      case Transporte.bike:
        print('Vou de bike para aventura.');
        break;
      case Transporte.onibus:
        print('Vou de busão para aventura.');
        break;
      case Transporte.aviao:
        print('Vou de avião para aventura.');
        break;
      case Transporte.trem:
        print('Vou de trem para aventura.');
        break;
      default:
        print('Vou para aventura, isso é o que importa.');
        break;
    }
  }

  void visitar(String localVisita) {
    registrosVisitados.add(localVisita);
    _totalLocaisVisitados++;
  }

  void registrarPrecoVisita(String local, dynamic preco) {
    registrarPrecos[local] = preco;
  }

  String get returnCodigo {
    return codigoTrabalho;
  }

  int get consultarTotalLocaisVisitados {
    return _totalLocaisVisitados;
  }

  set alterarLocaisVisitados(int novaQnt) {
    if (novaQnt < 10) {
      _totalLocaisVisitados = novaQnt;
    } else {
      print('Não é possível visitar tantos lugares em tão pouco tempo.');
    }
  }
}

dart_sintaxe.dart

import 'viagem.dart';
import 'transporte.dart';

void main() {
  Viagem viagemHoje = Viagem(Transporte.onibus);
  print('Código de trabalho: ${viagemHoje.returnCodigo}');
  viagemHoje.escolherMeioTransporte(viagemHoje.locomocao);
  viagemHoje.visitar('Brasília');
  viagemHoje.registrarPrecoVisita("Brasília", 500);
  viagemHoje.visitar('Rio de Janeiro');
  viagemHoje.registrarPrecoVisita('Rio de Janeiro', 700);
  print(viagemHoje.registrosVisitados);
  print(viagemHoje.registrarPrecos);
  print(viagemHoje.consultarTotalLocaisVisitados);
  viagemHoje.alterarLocaisVisitados = 100;
  print(viagemHoje.consultarTotalLocaisVisitados);
}

Resultado do código dart_sintaxe.dart: Resultado do código dart_sintaxe.dart

1 resposta
solução!

Oi Fernando, tudo bem?

Muito obrigada por compartilhar conosco o seu resultado da atividade! Fico realmente contente em saber que você está praticando, pois a prática é o caminho para a maestria. Parabéns por dedicar seu tempo e esforço para fixar o que foi ensinado nas aulas.

Continue praticando, pois cada esforço conta e te levará mais perto dos seus objetivos!

Um abraço.