Introdução às classes em C#
As classes são os blocos de construção fundamentais da programação orientada a objetos em C#. Eles permitem que os programadores definam o projeto para criar objetos, que são instâncias da classe. As classes encapsulam dados e comportamentos em uma única unidade, fornecendo uma maneira modular e reutilizável de organizar o código.
Definição de Classe em C#
As classes são definidas da seguinte maneira:
// Define a class called 'Person'
class Person
{
// Class variables (also known as fields)
public string Name;
public int Age;
// Class method
public void Greet()
{
Console.WriteLine($"Hello, my name is {Name} and I'm {Age} years old.");
}
}
// Create objects of the 'Person' class
Person person1 = new Person();
person1.Name = "John";
person1.Age = 30;
person1.Greet(); // Output: Hello, my name is John and I'm 30 years old.
Person person2 = new Person();
person2.Name = "Jane";
person2.Age = 25;
person2.Greet(); // Output: Hello, my name is Jane and I'm 25 years old.
- No código acima, definimos uma classe chamada 'Person', que possui duas variáveis de classe pública: 'Name' (do tipo 'string') e 'Age' (do tipo 'int'). Também temos um método público chamado 'Greet()' que imprime uma saudação usando as variáveis 'Name' e 'Age'.
- Para criar objetos da classe 'Person', usamos o 'new' palavra-chave seguida pelo nome da classe ('Person'). Em seguida, atribuímos valores às variáveis 'Name' e 'Age' de cada objeto. Por fim, chamamos o método 'Greet()' em cada objeto para exibir a saudação.
- As classes fornecem uma maneira de criar várias instâncias (objetos) com seus próprios dados exclusivos, permitindo criar quantos objetos 'Person' forem necessários e acessar seus propriedades e métodos de forma independente.
Conclusão
As classes fornecem uma base para criar aplicativos complexos com C#, oferecendo recursos como construtores para inicialização de objeto, propriedades para acesso controlado a membros de classe e modificadores de acesso para gerenciamento de visibilidade. Aproveitando as classes de forma eficaz, é possível criar estruturas de código modulares, sustentáveis e escaláveis.