Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Classes e Objetos em C#: Fundamentos para POO Robusta

Classes e Objetos em C#: Fundamentos para POO Robusta

Neste tutorial, você aprenderá sobre o conceito de classes e objetos em C# com a ajuda de exemplos.

C# é uma linguagem orientada a objetos que estrutura aplicações em torno de objetos. Em POO, resolvemos problemas complexos dividindo-os em objetos reutilizáveis e autocontidos.

Para trabalhar com objetos, precisamos realizar as seguintes atividades:


Classe em C#

Uma classe é o modelo para um objeto. Pense nela como a planta de uma casa: define cômodos, portas, janelas e regras estruturais. Uma casa real construída a partir dessa planta é um objeto.

Múltiplas casas podem compartilhar a mesma planta, assim como muitos objetos podem ser criados a partir da mesma classe.

Criar uma classe em C#

class NomeDaClasse { } 

Aqui definimos uma classe chamada NomeDaClasse. Uma classe pode conter

Exemplo:

class Cachorro { // Campo string raca; // Método public void Latir() { // Implementação } } 

No exemplo acima:

Nota: Em C#, membros de uma classe incluem tanto campos quanto métodos.


Objetos em C#

Um objeto é uma instância de uma classe. Por exemplo, a classe Cachorro pode produzir objetos como um Bulldog, Pastor Alemão ou Pug.

Criando um Objeto de uma classe

NomeDaClasse obj = new NomeDaClasse(); 

Aqui new cria um objeto; obj é seu nome. Por exemplo:

Cachorro bulldog = new Cachorro(); 

O objeto bulldog agora pode acessar os campos e métodos definidos em Cachorro.


Acessando Membros da Classe Usando um Objeto

Acesse membros com o operador ponto (.):

using System; namespace ClassObject { class Cachorro { string raca; public void Latir() { Console.WriteLine("Au Au !!"); } static void Main(string[] args) { // cria objeto Cachorro Cachorro bulldog = new Cachorro(); // define raca bulldog.raca = "Bulldog"; Console.WriteLine(bulldog.raca); // invoca método bulldog.Latir(); Console.ReadLine(); } } } 

Saída

Bulldog Au Au !!

Observe o uso de bulldog e o operador ponto para acessar raca e Latir().


Criando Múltiplos Objetos de uma Classe

Instancie vários objetos da mesma classe, cada um com seus próprios dados:

using System; namespace ClassObject { class Funcionario { string departamento; static void Main(string[] args) { // primeiro funcionario Funcionario sheeran = new Funcionario(); sheeran.departamento = "Desenvolvimento"; Console.WriteLine("Sheeran: " + sheeran.departamento); // segundo funcionario Funcionario taylor = new Funcionario(); taylor.departamento = "Redação de Conteúdo"; Console.WriteLine("Taylor: " + taylor.departamento); Console.ReadLine(); } } } 

Saída

Sheeran: Desenvolvimento Taylor: Redação de Conteúdo

Cada objeto mantém seu próprio valor de departamento.


Criando Objetos em uma Classe Diferente

Objetos podem ser criados em outras classes. Por exemplo:

using System; namespace ClassObject { class Funcionario { public string nome; public void Trabalhar(string trabalho) { Console.WriteLine("Trabalho: " + trabalho); } } class FuncionarioDrive { static void Main(string[] args) { // cria objeto Funcionario Funcionario e1 = new Funcionario(); Console.WriteLine("Funcionário 1"); // define nome e1.nome = "Gloria"; Console.WriteLine("Nome: " + e1.nome); // chama método e1.Trabalhar("Programação"); Console.ReadLine(); } } } 

Saída

Funcionário 1 Nome: Gloria Trabalho: Programação

Aqui FuncionarioDrive cria um objeto Funcionario. Membros públicos permitem acesso entre classes. Saiba mais sobre modificadores de acesso na documentação oficial.


Por que Objetos e Classes?

Classes e objetos permitem design modular. Para um jogo com muitos inimigos, uma única classe Inimigo pode definir vida, municao, Atirar() e Correr(). Cada instância de inimigo então mantém seu próprio estado enquanto compartilha comportamento.

Ao modelar código em torno de objetos, reduzimos complexidade, melhoramos manutenibilidade e promovemos reutilização.

Linguagem C

  1. Dominando Classes e Métodos Abstratos em C#: Guia Prático
  2. Entendendo Classes e Métodos Parciais em C#
  3. Dominando Classes e Métodos Sealed em C#: Quando Usar, Exemplos Claros e Segurança de Código
  4. Classes e Objetos em C++: Guia Prático de Programação Orientada a Objetos
  5. Funções Amigas e Classes Amigas em C++: Dominando o Controle de Acesso
  6. Dominando Programação Orientada a Objetos em Python: Classes, Herança, Encapsulamento e Polimorfismo
  7. Classes e Objetos em Java: Guia Prático
  8. Classes e Métodos Abstratos em Java: Guia Completo
  9. Dominando Classes Aninhadas e Internas em Java: Tipos, Exemplos e Boas Práticas
  10. Padrão Singleton em Java Explicado: Como Implementar e Usar com Segurança