Invoering
In Python is een privémethode een methode die niet bedoeld is om te worden gebruikt buiten de klasse waarin deze is gedefinieerd. Deze methoden worden aangegeven met een dubbel onderstrepingsteken (__) vóór hun naam, en ze zijn alleen toegankelijk binnen de klasse waarin ze zijn gedefinieerd. In dit artikel gaan we het concept van privémethoden in Python bespreken, hun voor- en nadelen, en hoe je ze met voorbeelden kunt gebruiken.
Wat is een privémethode in Python?
Een private methode is een methode die niet bedoeld is om te worden gebruikt buiten de klasse waarin deze is gedefinieerd. Deze methoden worden gebruikt om interne functionaliteit binnen de klasse te implementeren. Deze zijn niet bedoeld om te worden gebruikt door externe code. In Python worden privémethoden aangegeven met een dubbel onderstrepingsteken vóór hun naam.
Voorbeeld
__method_name
Hoe definieer ik een privémethode in Python?
Wanneer de programmeur een privémethode in Python wil definiëren, moet de programmeur een dubbel onderstrepingsteken voor de naam van de methode toevoegen. Hier is een voorbeeld:
Programma 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()
Uitgang:
Uitleg:
In het bovenstaande voorbeeld hebben we een klasse gedefinieerd met de naam MyClass. Het heeft een privémethode genaamd __private_method. Deze methode wordt aangeroepen vanuit de klassenconstructor (__init__) met behulp van self.__private_method(). Omdat de methode een dubbel onderstrepingsteken heeft, is deze privé en niet toegankelijk buiten de klasse.
Programma 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()
Uitgang:
Uitleg:
De verstrekte code definieert een klasse BankAccount met methoden voor het storten en opnemen van geld, het weergeven van het rekeningsaldo en het afdrukken van een rekeningafschrift. Er wordt vervolgens een exemplaar van deze klasse gemaakt en er worden enkele transacties mee uitgevoerd, gevolgd door het afdrukken van een verklaring.
Voordelen van privémethoden in Python
Nadelen van privémethoden in Python
Conclusie
Privémethoden in Python zijn een nuttige functie die kan helpen bij het bereiken van inkapseling en het verbeteren van de onderhoudbaarheid van de code. Hoewel ze enkele nadelen hebben, wegen de voordelen van het gebruik van privémethoden in Python zwaarder dan de nadelen.