вступ
У Python приватний метод — це метод, який не призначений для використання поза класом, у якому він визначений. Ці методи позначаються подвійним префіксом підкреслення (__) перед їх назвою, і доступ до них можливий лише в межах класу, де вони визначені. У цій статті ми збираємося обговорити концепцію приватних методів у Python, їхні переваги та недоліки, а також як їх використовувати з прикладами.
Що таке приватний метод у Python?
Приватний метод — це метод, який не призначений для використання поза класом, у якому він визначений. Ці методи використовуються для реалізації внутрішньої функціональності всередині класу. Вони не призначені для використання зовнішнім кодом. У Python приватні методи позначаються подвійним префіксом підкреслення перед їх назвою.
підручники по java
приклад
__method_name
Як визначити приватний метод у Python?
Коли програміст хоче визначити приватний метод у Python, йому потрібно додати подвійний префікс підкреслення перед назвою методу. Ось приклад:
Програма 1:
class MyClass: def __init__(self): self.__private_method() def __private_method(self): print('This is a private method.') # Instantiate, the class my_obj = MyClass()
Вихід:
Пояснення:
У наведеному вище прикладі ми визначили клас під назвою MyClass. Він має приватний метод під назвою __private_method. Цей метод викликається з конструктора класу (__init__) за допомогою self.__private_method(). Оскільки метод має подвійний префікс підкреслення, він є приватним і не може бути доступний поза класом.
Програма 2:
class BankAccount: def __init__(self, account_number, balance): self.__account_number = account_number self.__balance = balance def deposit(self, amount): self.__balance += amount def withdraw(self, amount): if self.__balance >= amount: self.__balance -= amount else: print('Insufficient funds') def __display_balance(self): print('Account Balance:', self.__balance) def statement(self): print('Account Number:', self.__account_number) self.__display_balance() # create a BankAccount object my_account = BankAccount('123456789', 1000) # make some transactions my_account.deposit(500) my_account.withdraw(200) # print a statement my_account.statement()
Вихід:
Пояснення:
сканер далі
Наданий код визначає клас BankAccount із методами внесення та зняття коштів, відображення балансу рахунку та друку виписки з рахунку. Потім створюється екземпляр цього класу, і з ним виконуються деякі транзакції, після чого друкується оператор.
Переваги приватних методів у Python
Недоліки приватних методів у Python
Висновок
Приватні методи в Python є корисною функцією, яка може допомогти досягти інкапсуляції та покращити підтримку коду. Хоча вони мають певні недоліки, переваги використання приватних методів у Python переважують недоліки.