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

Faça como eu fiz: dados de passageiros

Program.cs

using Transporte.Modelos;
Passageiro p1 = new Passageiro("Lúcia", 45, 3);  
Passageiro p2 = new Passageiro("Rodrigo", 30, 1);

Console.Clear();
p1.ExibirDados();
p2.ExibirDados();

Pessoa.cs

namespace Transporte.Modelos;
internal class Pessoa {

    public string? Nome {get;}
    public int Idade {get;}

    public Pessoa(string? nome, int idade) {
        Nome = nome;
        Idade = idade;
    }
}

Passageiro.cs

namespace Transporte.Modelos;
internal class Passageiro : Pessoa {

    public int QuantidadeBilhetes {get;}

    public Passageiro(string? nome, int idade, int quantiaBilhetes) : base (nome, idade) {
        QuantidadeBilhetes = quantiaBilhetes;
    }

    public void ExibirDados() {
        Console.WriteLine($"Nome: {Nome}");
        Console.WriteLine($"Idade: {Idade}");
        Console.WriteLine($"Quantidade de Bilhetes: {QuantidadeBilhetes}\n");
    }
}
1 resposta
solução!

Oi, Diego! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Gostei da forma como você aplicou a herança entre Pessoa e Passageiro, deixando os dados comuns na classe base e a QuantidadeBilhetes na classe derivada. Isso mostra uma boa organização do código e combina bem com a proposta da atividade sobre herança vs. composição.

Uma dica interessante para o futuro é sobrescrever o método ToString() para facilitar a exibição dos dados e deixar o código mais reutilizável.


public override string ToString()
{
    return $"Nome: {Nome}\nIdade: {Idade}\nBilhetes: {QuantidadeBilhetes}";
}
Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!