Fácil C#
Criando uma classe Pessoa
Enunciado
Crie uma classe Pessoa com os campos Nome (string) e Idade (int). Adicione um construtor que recebe esses valores e um método Apresentar() que imprime Olá, meu nome é [Nome] e tenho [Idade] anos. No Main, crie duas pessoas e chame Apresentar() para cada uma.
Requisitos
- A classe
Pessoadeve ter os camposNomeeIdade. - O construtor deve inicializar os dois campos.
- O método
Apresentar()deve imprimir a frase no formato exato. - O
Maindeve criar duas instâncias e chamarApresentar()em cada uma.
Código inicial
using System;
public class Pessoa
{
// Declare os campos Nome e Idade
// Declare o construtor
// Declare o método Apresentar
}
public class Program
{
public static void Main()
{
// Crie duas pessoas e chame Apresentar()
}
}
Saída esperada
Olá, meu nome é Ana e tenho 30 anos.
Olá, meu nome é Bruno e tenho 25 anos.
Ver dica
Use Console.WriteLine com interpolação de strings: $"Olá, meu nome é {Nome} e tenho {Idade} anos.".
Mostrar solução
using System;
public class Pessoa
{
// Campos públicos para simplificar o exemplo.
public string Nome;
public int Idade;
// Construtor que inicializa os campos.
public Pessoa(string nome, int idade)
{
Nome = nome;
Idade = idade;
}
// Método que imprime a apresentação.
public void Apresentar()
{
Console.WriteLine($"Olá, meu nome é {Nome} e tenho {Idade} anos.");
}
}
public class Program
{
public static void Main()
{
// Cria duas instâncias com valores diferentes.
Pessoa p1 = new Pessoa("Ana", 30);
Pessoa p2 = new Pessoa("Bruno", 25);
// Chama o método em cada objeto.
p1.Apresentar();
p2.Apresentar();
}
}
Passo a passo
- Declaramos a classe
Pessoacom dois campos públicos:NomeeIdade. - O construtor
Pessoa(string nome, int idade)recebe os valores e os atribui aos campos. - O método
Apresentar()usa interpolação de strings para montar a mensagem e a imprime. - No
Main, criamosp1ep2comnew Pessoa(...), passando valores diferentes. - Chamamos
Apresentar()em cada objeto, o que imprime as duas linhas esperadas.
Por que funciona
Cada objeto Pessoa tem sua própria cópia dos campos Nome e Idade. O construtor garante que esses campos sejam inicializados no momento da criação. O método Apresentar() acessa os campos do objeto atual e imprime a mensagem personalizada.
Erros comuns
- Esquecer de chamar
new:Pessoa p1; p1.Apresentar();gera erro de compilação (uso de variável não atribuída). - Não definir o construtor e tentar usar
new Pessoa("Ana", 30): a classe teria apenas o construtor padrão sem parâmetros, causando erro. - Usar
Console.WriteLinesem interpolação:"Olá, meu nome é {Nome}..."imprimiria literalmente as chaves.
Outra forma de resolver
Usar propriedades autoimplementadas em vez de campos públicos:
public string Nome { get; set; }
public int Idade { get; set; }
Isso é preferível em código real para encapsular melhor os dados.
Saída esperada
Olá, meu nome é Ana e tenho 30 anos.
Olá, meu nome é Bruno e tenho 25 anos.