Sobes.tech
Intern

Getter жана setter эмне?

sobes.tech AI

AIден жооп

Геттер (getter) жана сеттер (setter) — бул объектке багытталган программалоодо классдын жеке (же корголгон) талааларынын маанилерине кирүү жана өзгөртүү үчүн колдонулган атайын ыкмалар.

Геттер:

  • Таланын маанисин окууга көзөмөлдөнгөн кирүүнү камсыз кылат.
  • Адатта, get менен башталат (мисалы, getName()).
  • Маанини кайтаруудан мурун кошумча аракеттерди аткара алат (мисалы, форматтоо же текшерүү).

Сеттер:

  • Таланын жаңы маанисин жазууга көзөмөлдөнгөн кирүүнү камсыз кылат.
  • Адатта, set менен башталат (мисалы, setName()).
  • Таланын маанисин белгилөөнүн алдында кирүү маалыматтарын текшерүүгө мүмкүнчүлүк берет.
  • Таланын маанисин өзгөртүп жатканда логиканы ишке ашырууга мүмкүндүк берет (мисалы, башка бөлүктөргө кабарлоо).

Python мисалы:

class Person:
    def __init__(self, name):
        self._name = name # Жеке талаа

    # Геттер
    def get_name(self):
        return self._name

    # Сеттер
    def set_name(self, new_name):
        if isinstance(new_name, str) and len(new_name) > 0:
            self._name = new_name
        else:
            print("Жараксыз ат")

# Колдонуу
person = Person("Alice")
print(person.get_name()) # Геттерди колдонуу

person.set_name("Bob") # Сеттерди колдонуу
print(person.get_name())

person.set_name("") # Валидация менен сеттердин мисалы

Геттерлер жана сеттерлер колдонуу инкапсуляцияны илгерилетет, объекттин ичинде маалыматтарга кирүүнү жана өзгөртүүнү башкарууга мүмкүндүк берет, бул коддун түзүлүшү жана оңдоосун жакшыртат.