Klassarv i objektorienterade program

Programmeringsparadigm – grundläggande koncept

Eleanor Thomas

Senior Data Analytics Engineer

Klassarv i objektorienterad programmering

  • Klassarv: när en klass "ärver" metoder och attribut från en annan, överordnad klass
  • Exempel:
    • Klassen Poodle ärver från Dog (och har lockigt hår)
    • Klassen Dog ärver från Pet (och "skäller")
    • Klassen Pet ärver från Animal
  • Antalet arvsnivåer är obegränsat, men fler nivåer är inte alltid bättre

Grupp av husdjur

Programmeringsparadigm – grundläggande koncept

Exempel på klassarv

class Dog():
    def __init__(self, name):
        self.name = name
    def bark(self):
        print("Arf!")

lacy = Dog("Lacy")
lacy.bark()
class Pet():
    def __init__(self, name):
        self.name = name

class Dog(Pet): def bark(self): print("Arf!")
lacy = Dog("Lacy") lacy.bark()
Programmeringsparadigm – grundläggande koncept

Exempel på klassarv, fortsättning

class Cat(Pet):
    def meow(self):
        print("Meow!")

class Horse(Pet): def neigh(self): print("Neigh!")
fluffy = Cat("Fluffy")
fluffy.meow()
Meow!
midnight = Horse("Midnight")
midnight.neigh()
Neigh!

Alla följande ger fel!

fluffy.neigh()
fluffy.bark()
midnight.meow()
Programmeringsparadigm – grundläggande koncept

Nu kör vi en övning!

Programmeringsparadigm – grundläggande koncept

Preparing Video For Download...