- Autor
- Nome
- Nelson Silva
- Social
Introdução
Em C#, como em muitas linguagens de programação orientadas a objetos, o encapsulamento é uma prática fundamental. Ele promove a proteção e a integridade dos dados ao restringir o acesso direto a eles. As propriedades desempenham um papel crucial neste aspecto.
- O que são Propriedades?
- Benefícios das Propriedades
- Profundidade em get e set
- Propriedades Somente Leitura e Somente Escrita
- Exemplos Avançados
O que são Propriedades?
Uma propriedade é um membro de uma classe que proporciona um mecanismo para obter ou definir o valor de um campo interno. Em vez de acessar diretamente o campo, pode-se usar propriedades para interagir com ele, garantindo que qualquer lógica associada à leitura ou escrita do campo seja respeitada.
Benefícios das Propriedades
- Encapsulamento: As propriedades ajudam a proteger os dados, evitando que sejam modificados de maneira indesejada.
- Validação: Antes de atribuir um valor, pode-se garantir que ele esteja dentro de um determinado intervalo ou que satisfaça outras condições.
- Representação Computada: As propriedades podem retornar um valor calculado em vez de um valor armazenado.
get
e set
Profundidade em - get: Este acessor é utilizado quando se lê o valor da propriedade. Pode-se adicionar lógica adicional, como cálculos ou transformações, antes de retornar o valor.
- set: Este acessor entra em ação quando se tenta modificar o valor da propriedade. É aqui que a validação ou outras lógicas relacionadas à modificação do valor ocorrem.
Propriedades Somente Leitura e Somente Escrita
- Somente Leitura: Uma propriedade que apenas define o acessor
get
. - Somente Escrita: Embora raras, são propriedades que apenas definem o acessor
set
.
Exemplos Avançados
Além do exemplo básico, vamos explorar um pouco mais:
public class Circulo {
private double raio;
public double Raio {
get { return raio; }
set {
if (value < 0)
raio = 0;
else
raio = value;
}
}
// Propriedade somente leitura
public double Area {
get {
return Math.PI * raio * raio;
}
}
}
Neste exemplo, temos uma classe Circulo
que possui uma propriedade Raio
e uma propriedade somente leitura Area
. O Raio
não pode ser negativo, e a Area
é calculada com base no Raio
.
Conclusão
O uso correto de propriedades em C# é essencial para garantir que os dados sejam manipulados de maneira segura e controlada. Elas oferecem uma maneira estruturada de interagir com os campos de uma classe, mantendo a integridade dos dados e oferecendo flexibilidade na implementação.