English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Atributos (Properties) São membros nomeados (named) de classes (class), estruturas (structure) e interfaces (interface). As variáveis de membro ou métodos dentro de uma classe ou estrutura são chamados Campos (Fields)。 Acessadores (accessors) Faça com que os valores dos campos privados sejam acessíveis para leitura e escrita ou manipulação.
Atributos (Properties) não determinam o local de armazenamento. Em vez disso, eles têm valores que podem ser lidos e escritos ou calculados. Acessadores (accessors)。
Por exemplo, há uma classe chamada Student que possui campos privados chamados age, name e code. Não podemos acessar esses campos diretamente fora do escopo da classe, mas podemos ter atributos que acessam esses campos privados.
Atributo (Property)Acessor (accessor)Contém comandos executáveis que ajudam a obter (ler ou calcular) ou definir (escrever) propriedades. A declaração de acessor pode conter um acessor get, um acessor set, ou ambos. Por exemplo:
// Declarar propriedade do tipo string Code public string Code { get { return code; } set { code = value; } } // Declarar propriedade do tipo string Name public string Name { get { return name; } set { name = value; } } // Declarar propriedade do tipo int Age { get { return age; } set { age = value; } }
O seguinte exemplo demonstra o uso de propriedades (Property):
using System; namespace w3codebox { class Student { private string code = \ private string name = \ private int age = 0; // Declarar propriedade do tipo string Code public string Code { get { return code; } set { code = value; } } // Declarar propriedade do tipo string Name public string Name { get { return name; } set { name = value; } } // Declarar propriedade do tipo int Age { get { return age; } set { age = value; } } public override string ToString() { return \ + Code +", Name = \ + Name + ", Age = \ + Age; } } class ExampleDemo { public static void Main() { // Criar um novo objeto Student Student s = new Student(); // Definir o código, nome e idade do student s.Código = "001"; s.Nome = "Zara"; s.Idade = 9; Console.WriteLine(\ // Aumentar a idade s.Idade += 1; Console.WriteLine(\ Console.ReadKey(); } } }
Quando o código acima for compilado e executado, ele produzirá o seguinte resultado:
Informações do Estudante: Código = 001, Nome = Zara, Idade = 9 Informações do Estudante: Código = 001, Nome = Zara, Idade = 10
As classes abstratas podem ter propriedades abstratas, que devem ser implementadas nas classes derivadas. O seguinte programa ilustra isso:
using System; namespace w3codebox { public abstract class Person { public abstract string Name { get; set; } public abstract int Age { get; set; } } class Student : Person { private string code = \ private string name = \ private int age = 0; // Declarar propriedade do tipo string Code public string Code { get { return code; } set { code = value; } } // Declarar propriedade do tipo string Name public override string Name { get { return name; } set { name = value; } } // Declarar propriedade do tipo int Age public override int Age { get { return age; } set { age = value; } } public override string ToString() { return \ + Code +", Name = \ + Name + ", Age = \ + Age; } } class ExampleDemo { public static void Main() { // Criar um novo objeto Student Student s = new Student(); // Definir o código, nome e idade do student s.Código = "001"; s.Nome = "Zara"; s.Idade = 9; Console.WriteLine("Informações do Estudante:",- {0}", s); // Aumentar a idade s.Idade += 1; Console.WriteLine("Informações do Estudante:",- {0}", s); Console.ReadKey(); } } }
Quando o código acima for compilado e executado, ele produzirá o seguinte resultado:
Informações do Estudante: Código = 001, Nome = Zara, Idade = 9 Informações do Estudante: Código = 001, Nome = Zara, Idade = 10