Junior — Middle
124
Proqramlaşdırmada mülkiyyət (property) anlayışını və onun siniflərdə necə tətbiq olunduğunu izah edə bilərsinizmi?
AI-dan cavab
sobes.tech Süni İntellekt
Свойство (property) в программировании — это механизм, который позволяет управлять доступом к атрибутам класса через методы, но при этом использовать синтаксис обращения как к обычному полю.
В Python свойство создаётся с помощью декоратора @property для геттера и дополнительных декораторов для сеттера и делеттера.
Это удобно, когда нужно:
- Контролировать чтение и запись значения (например, проверять или преобразовывать данные).
- Сохранять интерфейс класса неизменным при изменении внутренней реализации.
Пример:
class Person:
def __init__(self, name):
self._name = name
@property
def name(self):
return self._name
@name.setter
def name(self, value):
if not value:
raise ValueError("Имя не может быть пустым")
self._name = value
p = Person("Иван")
print(p.name) # Иван
p.name = "Пётр" # вызов сеттера
Таким образом, свойства позволяют инкапсулировать логику доступа к данным, сохраняя удобный синтаксис.