Os membros de classe são divididos em dois tipos: membros de dados e membros de função
Os tipos simples que aprendemos anteriormente, como int, long e short, são tipos nativos do .NET. Os desenvolvedores da Microsoft os codificaram antecipadamente e os integraram ao framework .NET. Ao instalar o Visual Studio 2022, o .NET é instalado junto, trazendo todos esses tipos simples embutidos. Cada um só consegue armazenar um único dado.
Mais adiante você conhecerá outros tipos que guardam vários dados, sendo o array um exemplo principal. Um array armazena múltiplos valores do mesmo tipo, como vários números int. Cada dado individual dentro do array é chamado de elemento, acessado por meio de um índice. Vamos detalhar o funcionamento dos arrays nas próximas aulas.
Também temos tipos compostos que armazenam vários itens de dados com tipos diferentes; esses itens são chamados de membros. Para acessar cada membro, usamos o nome personalizado definido por você.
Os membros se dividem em duas categorias: membros de dados, membros de função.
Membros de dados: Armazenam valores relacionados a uma instância da classe ou à classe como um todo
Membros de função: Executam lógicas de código e definem os comportamentos que esse tipo pode realizar
A classe Person abaixo contém dois membros de dados
class Person
{
private string name;
private int age;
public void SayHi()
{
}
public void SetMyName(string name)
{
this.name = name;
}
}Code language: PHP (php)
Membros de Dados (Campos / Propriedades): Guardam o estado do objeto, como nome e idade dentro de uma classe de usuário
Membros de Função (Métodos): Definem as ações do objeto, como alterar o nome do usuário ou exibir uma saudação
Arrays são acessados por índices numéricos; membros de classe são acessados por nomes customizados
class Program
{
static void Main(string[] args)
{
// This is a int array
int[] array = new int[5] { 1,2,3,4,5 };
Console.WriteLine(array[0]); // 1
Person person = new Person();
person.SetMyName("John");
person.SetMyAge(30);
person.SayHi(); // Hi, my name is John and I am 30 years old.
}
}
class Person
{
private string name;
private int age;
public void SayHi()
{
Console.WriteLine($"Hi, my name is {name} and I am {age} years old.");
}
public void SetMyName(string name)
{
this.name = name;
}
public void SetMyAge(int age)
{
this.age = age;
}
}Code language: PHP (php)
No exemplo acima, criamos um array de inteiros com cinco elementos inicializados com os valores 1, 2, 3, 4 e 5. Para recuperar o primeiro elemento, é necessário usar o índice 0 — atenção, os índices dos arrays começam em zero.
Já os membros de classe são acessados com o nome do objeto seguido de um ponto, como vemos no trecho person.

A linha Class Person { } é apenas uma definição de classe. O código interno só vai rodar se for chamado por outro trecho do programa; sem chamadas, ele funciona só como um modelo ou desenho, sem executar nada.
A função Main, ponto de entrada do programa, é uma função estática (explicaremos esse conceito depois). Não precisa instanciar um objeto para usá-la, pois ela pertence diretamente à classe. Ao dar dois cliques no arquivo exe para abrir o programa, o sistema operacional chama a função Main automaticamente.
Membros de classe