Capítulo 09: Classes e Objetos (POO) 🤖🌆

Neste capítulo, vamos entrar no mundo da Programação Orientada a Objetos (POO) no C#, aprendendo a criar nossas próprias estruturas de dados complexas com o tema Cyberpunk 2077!


📖 O que são Classes e Objetos?

  • Classe: É o “molde” ou “planta baixa” para criar algo. Ela define quais dados e ações o objeto terá.
  • Objeto: É a instância real criada a partir do molde. É o personagem que criamos no jogo!

📖 Exemplo Guiado: Registro de Mercenário

Vamos criar uma classe para representar um Mercenário de Night City e depois criar um objeto (instância) a partir dela.

  1. Crie o arquivo mercenario.cs na pasta src/:
using System;
 
// Código principal
// Criando o objeto 'v' a partir da classe 'Mercenario'
Mercenario v = new Mercenario();
v.Apelido = "V";
v.Nivel = 50;
v.Cibernetica = 75.5;
 
// Chamando a ação do objeto
v.ExibirStatus();
 
// Criando a classe (Molde)
public class Mercenario {
    // Atributos (Dados)
    public string Apelido;
    public int Nivel;
    public double Cibernetica; // % de implantes
 
    // Método (Ação)
    public void ExibirStatus() {
        Console.WriteLine("--- Registro de Night City ---");
        Console.WriteLine($"Apelido: {Apelido}");
        Console.WriteLine($"Nivel: {Nivel}");
        Console.WriteLine($"Implantes: {Cibernetica}%");
    }
}

🕹️ Como Executar e Testar no VS Code

  1. Execute o projeto usando dotnet run.

Resultado Esperado:

--- Registro de Night City ---
Apelido: V
Nivel: 50
Implantes: 75.5%

📊 Ilustração Visual: Classe vs Objeto

A classe é a definição, o objeto é a realização:

classDiagram
    class Mercenario {
        +String Apelido
        +int Nivel
        +double Cibernetica
        +ExibirStatus()
    }

🛠️ Prática Obrigatória 1: Cadastro de Ciborgue

Crie um programa chamado cadastro_ciborgue.cs com uma classe Ciborgue que tenha os atributos Modelo (string), Bateria (int) e Ativo (bool). Crie um método Exibir() para mostrar os dados formatados (ex: se ativo for true, mostre “Status: Ativo”). Instancie um ciborgue na main e teste!


🔑 Gabarito de Código

Prática 1: cadastro_ciborgue.cs

using System;
 
Ciborgue c = new Ciborgue();
c.Modelo = "T-800";
c.Bateria = 100;
c.Ativo = true;
 
c.Exibir();
 
public class Ciborgue {
    public string Modelo;
    public int Bateria;
    public bool Ativo;
 
    public void Exibir() {
        Console.WriteLine("\n--- Ciborgue Cadastrado ---");
        Console.WriteLine($"Modelo: {Modelo}");
        Console.WriteLine($"Bateria: {Bateria}%");
        Console.WriteLine($"Status: {(Ativo ? "Ativo" : "Inativo")}");
    }
}

Capitulo Anterior | Proximo Capitulo