Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python OOP-fundamenten: Klassen, objecten, overerving en constructors uitgelegd

Python Objectgeoriënteerd Programmeren (OOP)

Python's OOP-model laat ontwikkelaars real-world entiteiten modelleren als objecten gedefinieerd door klassen. De taal prioriteert herbruikbaarheid en modulariteit, wat het eenvoudig maakt om klassen te creëren en uit te breiden.

Wat is een klasse?

Een klasse is een logische container die data (attributen) en gedrag (methodes) bundelt. Het definieert een sjabloon voor objecten die gemeenschappelijke eigenschappen delen.

Voorbeeld: Een Klant-klasse zou attributen zoals transacties, saldo en schuld kunnen blootleggen, samen met methodes om storten() of opnemen().

Een klasse definiëren in Python

Volg deze stappen om een simpele klasse te maken:

  1. Gebruik het class keyword:
    class MijnKlasse: pass
  2. Definieer methodes binnen de klasse. De eerste parameter van elke instance-methode is self, wat verwijst naar het object zelf.
    class MijnKlasse: def groet(self): print("Hallo vanuit MijnKlasse")
  3. Instantieer de klasse:
    obj = MijnKlasse()
  4. Roep de methodes aan:
    obj.groet()

Compleet voorbeeld:

# Werkend voorbeeld van een Python-klasse class MijnKlasse: def methode1(self): print("Guru99") def methode2(self, tekst): print("Software Testing: " + tekst) def main(): c = MijnKlasse() c.methode1() c.methode2(" Testen is leuk") if __name__ == "__main__": main()

Overerving in Python

Overerving stelt een afgeleide klasse in staat om het gedrag van een basisklasse te hergebruiken en uit te breiden. Python ondersteunt zowel enkele als meervoudige overerving.

class Basis: def groet(self): print("Hallo vanuit Basis") class Afgeleide(Basis): def groet(self): super().groet() print("Hallo vanuit Afgeleide") # Gebruik obj = Afgeleide() obj.groet() 

Belangrijke punten:

  • Afgeleide klassen erven attributen en methodes automatisch.
  • Overschrijf methodes door een methode met dezelfde naam in de subklasse te definieren.
  • Roep een parent-methode expliciet aan met ParentKlasse.methode(self, …) of super().methode().

Constructors: __init__

De __init__-methode initialiseert nieuwe objecten met vooraf gedefinieerde waarden.

class Gebruiker: def __init__(self, naam): self.naam = naam def zeg_hallo(self): print(f"Welkom bij Guru99, {self.naam}") gebruiker = Gebruiker("Alex") gebruiker.zeg_hallo() 

Uitvoer: Welkom bij Guru99, Alex

Python 2 vs Python 3

Alleen kleine syntaxisverschillen bestaan. Het bovenstaande voorbeeld werkt in beide versies met de juiste print-statements.

Belangrijkste aan te houden punten

  • Klassen bundelen data en gedrag, gedefinieerd met het class-keyword.
  • Instance-methodes gebruiken self om naar het object te verwijzen.
  • Overerving bevordert herbruikbaarheid en kan enkel of meervoudig zijn.
  • Constructors (__init__) stellen initiële staat in voor nieuwe objecten.
  • Python's flexibele syntaxis en runtime-afhandeling van self maken OOP intuïtief.

Python

  1. Een Robot Bouwen met Raspberry Pi en Python: Een Complete Gids
  2. C# Classes & Objects: Fundamenten voor Robuuste OOP
  3. C++ Struct vs Class: Belangrijkste Verschillen, Syntaxis en Beste Gebruikssituaties
  4. Python Object-Oriented Programming beheersen: classes, inheritance, encapsulatie & polymorfisme
  5. Python-erfelijkheid beheersen: concepten, syntax en praktische voorbeelden
  6. Python's strip()-methode beheersen: Uitgebreide handleiding & praktische voorbeelden
  7. Python Counter in collections – Efficiënt tellen, updaten en rekenkundige operaties
  8. type() en isinstance() in Python begrijpen: praktische voorbeelden
  9. Python List index() – Elementposities Vinden met Praktische Voorbeelden
  10. Python Object-Georiënteerd Programmeren meesteren: Een uitgebreide gids
  11. Java Onder de Knie: Objects, Classes en Kern OOP Concepten