Python OOP:t: luokka, objekti, perintö ja konstruktori esimerkin kanssa
OOP sisään Python
OOP sisään Python on ohjelmointitapa, joka keskittyy objektien ja luokkien käyttöön samalla tavalla kuin muutkin yleiset ohjelmointikielet. Objektit voivat olla mitä tahansa reaalimaailman kokonaisuuksia. Python avulla kehittäjät voivat kehittää sovelluksia käyttämällä OOPs-lähestymistapaa keskittyen pääasiassa koodin uudelleenkäytettävyyteen. Luokkien ja objektien luominen on erittäin helppoa Python.
Mikä on luokka?
A luokka sisään Python on tietojen ja funktioiden looginen ryhmittely. Se antaa vapauden luoda tietorakenteita, jotka sisältävät mielivaltaista sisältöä ja ovat siten helposti saatavilla.
Esimerkiksi pankin työntekijä, joka haluaa hakea asiakkaan tiedot verkosta, menisi osoitteeseen asiakasluokka, jossa luetellaan kaikki sen attribuutit, kuten tapahtumatiedot, nosto- ja talletustiedot, velka jne..
Kuinka määritellä Python luokat
Luokan määrittämiseksi sinun on otettava huomioon seuraavat seikat
Vaihe 1) In Python, luokat määritellään "Luokka" avainsana
class myClass():
Vaihe 2) Luokkien sisällä voit määrittää funktioita tai menetelmiä, jotka ovat osa tätä luokkaa
def method1 (self): print "Guru99" def method2 (self,someString): print "Software Testing:" + someString
- Tässä olemme määrittäneet menetelmän1, joka tulostaa "Guru99".
- Toinen määrittämämme menetelmä on metodi2, joka tulostaa "Software Testing" + SomeString. SomeString on kutsumenetelmän tarjoama muuttuja
Vaihe 3) Kaikki luokassa on sisennetty, aivan kuten koodi funktiossa, silmukassa, if-lauseessa jne. Kaikki, mitä ei ole sisennetty, ei ole luokassa
HUOMAUTUS: Tietoja ”itsen” käyttämisestä Python
- Itseargumentti viittaa itse kohteeseen. Tästä syystä itse sanan käyttö. Joten tässä menetelmässä self viittaa tämän objektin tiettyyn esiintymään, jota käytetään.
- Itse on nimi, jota suositaan sopimuksen mukaan Pythons ilmaisemaan instanssimenetelmien ensimmäisen parametrin Python. Se on osa Python syntaksi objektien jäsenten käyttämiseen
Vaihe 4) Luokan kohteen tekeminen
c = myClass()
Vaihe 5) Menetelmän kutsuminen luokassa
c.method1() c.method2(" Testing is fun")
- Huomaa, että kun kutsumme metodia1 tai metodia2, meidän ei tarvitse antaa omaa avainsanaa. Sen hoitaa automaattisesti puolestamme Python ajonaikainen.
- Python runtime välittää "self"-arvon, kun kutsut ilmentymämenetelmää instanssissa, riippumatta siitä, annatko sen tarkoituksella vai et
- Sinun täytyy vain välittää ei-itse-argumenteista
Vaihe 6) Tässä on täydellinen koodi
# Example file for working with classes class myClass(): def method1(self): print("Guru99") def method2(self,someString): print("Software Testing:" + someString) def main(): # exercise the class methods c = myClass () c.method1() c.method2(" Testing is fun") if __name__== "__main__": main()
Kuinka perinnöllisyys toimii
Periytys on ominaisuus, jota käytetään olio-ohjelmoinnissa; se viittaa uuden luokan määrittämiseen tekemällä vähemmän tai ei lainkaan muutoksia olemassa olevaan luokkaan. Uusi luokka on ns johdettu luokka ja josta se perii, kutsutaan nimellä pohja. Python tukee perintöä; se myös tukee useita perintöjä. Luokka voi periä attribuutteja ja käyttäytymismenetelmiä toisesta luokasta, jota kutsutaan alaluokiksi tai perillisluokiksi.
Python Perinnön syntaksi
class DerivedClass(BaseClass): body_of_derived_class
Vaihe 1) Suorita seuraava koodi
# Example file for working with classes class myClass(): def method1(self): print("Guru99") class childClass(myClass): #def method1(self): #myClass.method1(self); #print ("childClass Method1") def method2(self): print("childClass method2") def main(): # exercise the class methods c2 = childClass() c2.method1() #c2.method2() if __name__== "__main__": main()
Huomaa, että in childClass, metodia1 ei ole määritelty, mutta se on johdettu ylätason myClassista. Tulos on "Guru99".
Vaihe 2) Poista kommentit rivit 8 ja 10. Suorita koodi
Nyt menetelmä 1 on määritelty childClassissa ja tulos “childClass Method1” näytetään oikein.
Vaihe 3) Poista kommentit rivi #9. Suorita koodi
Voit kutsua emoluokan metodia syntaksin avulla
ParentClassName.MethodName(self)
Meidän tapauksessamme kutsumme, myClass.method1(self) ja Guru99 tulostetaan odotetusti
Vaihe 4) Kommentoimaton rivi #19. Suorita koodi.
Lapsiluokan menetelmää 2 kutsutaan ja "childClass method2" tulostetaan odotetusti.
Python Rakentajat
Konstruktori on luokkafunktio, joka instantoi objektin ennalta määritettyihin arvoihin.
Se alkaa kaksoisalaviivalla (_). Se on __init__() -menetelmä
Alla olevassa esimerkissä otamme käyttäjän nimen käyttämällä konstruktoria.
class User: name = "" def __init__(self, name): self.name = name def sayHello(self): print("Welcome to Guru99, " + self.name) User1 = User("Alex") User1.sayHello()
Tuotos tulee olemaan:
Tervetuloa Guru99:ään, Alex
Python 2-esimerkki
Yllä olevat koodit ovat Python 3 esimerkkiä, jos haluat ajaa sisään Python 2 harkitse seuraavaa koodia.
# How to define Python classes # Example file for working with classes class myClass(): def method1(self): print "Guru99" def method2(self,someString): print "Software Testing:" + someString def main(): # exercise the class methods c = myClass () c.method1() c.method2(" Testing is fun") if __name__== "__main__": main() #How Inheritance works # Example file for working with classes class myClass(): def method1(self): print "Guru99" class childClass(myClass): #def method1(self): #myClass.method1(self); #print "childClass Method1" def method2(self): print "childClass method2" def main(): # exercise the class methods c2 = childClass() c2.method1() #c2.method2() if __name__== "__main__": main()
Opi seuraavasta opetusohjelmastamme Polymorfismi sisään Python
Yhteenveto
"Luokka" on funktioiden ja tietojen looginen ryhmittely. Python luokka tarjoaa kaikki olioohjelmoinnin vakioominaisuudet.
- Luokan periytymismekanismi
- Johdettu luokka, joka ohittaa minkä tahansa perusluokkansa menetelmän
- Metodi voi kutsua perusluokan metodia samalla nimellä
- Python Luokat määritellään avainsanan mukaan ”Luokka” itse
- Luokkien sisällä voit määrittää funktioita tai menetelmiä, jotka ovat osa luokkaa
- Kaikki luokassa on sisennetty, aivan kuten koodi funktiossa, silmukassa, if-lauseessa jne.
- Itseargumentti mukana Python viittaa itse kohteeseen. Itse on nimi, jota suositaan sopimuksen mukaan Pythons ilmaisemaan instanssimenetelmien ensimmäisen parametrin Python
-
Python runtime välittää "self"-arvon automaattisesti, kun kutsut ilmentymämenetelmää instanssissa, riippumatta siitä, annatko sen tarkoituksella vai et
- In Python, luokka voi periä attribuutteja ja käyttäytymismenetelmiä toiselta alaluokalta tai perijäluokalta.