Até pude ver que estava dando um erro pelo sobrecarregamento da pilha no caso a memória
porem eu pude ver algumas soluuções que continua dando erro segundo informações pode ser um loop infinito que o meu get esta chamando o set recursivamente porem não consegui resolver ainda quem poder me ajudar fico grato!
CLASSE CARRO
class Carro
{
public string Fabricante => "Ford";
public string Modelo => "Ford";
public int Ano
{
get => Ano;
set {
if (value >= 1960 || value <= 2023)
{
Console.WriteLine("Dentro da tabela de ano!");
}
else { Ano = value; Console.WriteLine("O carro está fora do ano ou acima do ano!"); }
}
}
// o value e do ano
public int QuantidadePortas => 4;
public int Velocidade { get; set; }
public string DescricaoDetalhada
{
get { return $"""
Fabricante: {Fabricante}
Modelo do carro: {Modelo}
Ano do carro: {Ano}
Quantidade de portas: {QuantidadePortas}
"""; }
}
public void exibirInformacoes()
{
Console.WriteLine($"Informações do carro: {this.Fabricante} {this.Modelo}, {this.QuantidadePortas} portas, {this.Ano}");
}
public void acelerar()
{
Console.WriteLine("Acelerando...");
if (Velocidade < 100)
{
Velocidade = Velocidade + 5;
}
}
public void frear()
{
Console.WriteLine("Freando...");
if (Velocidade > 0)
{
Velocidade = Velocidade - 5;
}
}
public void buzinar()
{
Console.WriteLine("Bi Bi");
}
}
PROGRAM,CS
Carro carro1 = new Carro();
carro1.Ano = 1959;
carro1.acelerar();
carro1.frear();
carro1.buzinar();
Console.WriteLine(carro1.DescricaoDetalhada);