Bij het programmeren van een taak met een matige complexiteit , is het vaak een goed idee om principes van object - georiënteerd ontwerp op te nemen in uw code . Overerving is een principe dat kan u toestaan om gestroomlijnde en gespecialiseerde code te construeren die werkt off van bestaande code bases . Python ondersteunt zowel single ( een klasse afgeleid van een klasse ) en meervoudige (een klasse afgeleid van vele klassen ) erfenis. Instructies Maak een Base Class 1 Maak een basisklasse die uw afgeleide klassen kunnen bellen . Zorg ervoor dat uw variabelen en methoden zijn volledig functioneel kopen van 2 Het volgende is een voorbeeld van wat een klasse met geen erfenis kan er zo uitzien : . Klasse myBaseClass ( object ) : baseVar = 23 def myFunc : print ' Bob Dobbs heeft Slack ' Merk op dat , volgens recente conventie , bij het definiëren van een klasse die niet erven van elke gebruiker pakketten , vertellen we de klasse te erven van de Python 'object ' klasse . 3 Gebruik de Python interpreter om ervoor te zorgen dat de basisklasse heeft geen syntax fouten . U kunt een bestand gebruiken om de hele klas en run bevatten : Python myBaseClass.pyIf het doet , ga terug en debuggen Met Single Inheritance of Multiple Inheritance . 4 Maak een klasse die je basis klasse behoren . Dit wordt gedaan door het intikken van de base class naam tussen haakjes op de eerste regel van je klas aangifte . Uw afgeleide klasse kan vervolgens gebruik maken van functies uit de basisklasse , evenals het definiëren van zijn eigen methoden . Een voorbeeld kan zijn : klasse myDerivedClass ( myBaseClass ) : def derivedFunc : myFunc afdruk baseVar 5 Instantiëren en bellen met de methoden van de afgeleide klasse van buiten de klas : myDerivedClass.derivedFunc >>> Bob Dobbs heeft Slack 23 6 Maak een afgeleide klasse die erft van meerdere klassen door gewoon een opsomming van de basis klassen opeenvolgend in de haakjes na de class definitie , gescheiden door komma's : klasse myDerivedClass ( myBaseClass1 , myBaseClass2 , myBaseClass3 ) : # steek hier je klas code < br >
|