Что такое свойства (Properties) в C#?
Этот вопрос проверяет понимание механизма работы с приватными полями класса с использованием свойств в C#.
Короткий ответ
Свойства в C# — это специальные члены класса, которые позволяют гибко читать, записывать или вычислять значение приватного поля. Свойства используют методы доступа ("get" и "set"), которые скрывают внутреннюю реализацию и обеспечивают инкапсуляцию.
Длинный ответ
Свойства в C# являются удобным механизмом для работы с данными, скрытыми внутри класса, и позволяют контролировать доступ к ним. Основные моменты:
Методы доступа (Accessors):
- get: Метод, который возвращает значение свойства.
- set: Метод, который устанавливает значение свойства.
Типы свойств:
- Свойства с чтением и записью: Содержат и get, и set методы.
- Только для чтения: Содержат только метод get.
- Только для записи: Содержат только метод set.
- Автоматически реализованные свойства: Введены в C# 3.0, когда не требуется дополнительная логика в методах доступа.
Пример реализации свойства:
public class Person
{
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
}В данном примере Name — это свойство с методами get и set, которые управляют доступом к приватному полю name.