Johdanto
Pythonissa yksityinen menetelmä on menetelmä, jota ei ole tarkoitettu käytettäväksi sen luokan ulkopuolella, jossa se on määritelty. Nämä menetelmät on merkitty kaksinkertaisella alaviiva-etuliitteellä (__) ennen niiden nimeä, ja niitä voi käyttää vain siinä luokassa, jossa ne on määritelty. Tässä artikkelissa aiomme keskustella yksityisten menetelmien käsitteestä Pythonissa, niiden eduista ja haitoista sekä niiden käytöstä esimerkkien avulla.
Mikä on yksityinen menetelmä Pythonissa?
Yksityinen menetelmä on menetelmä, jota ei ole tarkoitettu käytettäväksi sen luokan ulkopuolella, jossa se on määritelty. Näitä menetelmiä käytetään sisäisten toimintojen toteuttamiseen luokassa. Näitä ei ole tarkoitettu ulkoisen koodin käytettäväksi. Pythonissa yksityiset menetelmät merkitään kaksinkertaisella alaviiva-etuliitteellä ennen niiden nimeä.
Esimerkki
__method_name
Kuinka määritellä yksityinen menetelmä Pythonissa?
Kun ohjelmoija haluaa määrittää yksityisen menetelmän Pythonissa, ohjelmoijan on lisättävä kaksinkertainen alaviiva etuliite menetelmän nimen eteen. Tässä on esimerkki:
Ohjelma 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()
Lähtö:
Selitys:
Yllä olevassa esimerkissä olemme määrittäneet luokan nimeltä MyClass. Sillä on yksityinen menetelmä nimeltä __private_method. Tämä menetelmä kutsutaan luokan rakentajalta (__init__) käyttämällä self.__private_method(). Koska menetelmässä on kaksinkertainen alaviiva-etuliite, se on yksityinen eikä sitä voi käyttää luokan ulkopuolella.
Ohjelma 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()
Lähtö:
Selitys:
Annettu koodi määrittelee Pankkitili-luokan, jossa on menetelmät varojen tallettamiseen ja nostamiseen, tilin saldon näyttämiseen ja tiliotteen tulostamiseen. Tämän luokan ilmentymä luodaan sitten, ja sille suoritetaan joitakin tapahtumia, minkä jälkeen tulostetaan lausunto.
Yksityisten menetelmien edut Pythonissa
Pythonin yksityisten menetelmien haitat
Johtopäätös
Pythonin yksityiset menetelmät ovat hyödyllinen ominaisuus, joka voi auttaa saavuttamaan kapseloinnin ja parantamaan koodin ylläpidettävyyttä. Vaikka niillä on joitain haittoja, yksityisten menetelmien käytön edut Pythonissa ovat haittoja suuremmat.