Basisklasser og Underklasser
Stryg for at vise menuen
Implementering af arv i Python udføres gennem basisklasser (forældre) og subklasser (børn).
En basisklasse definerer generelle egenskaber og funktionaliteter, mens en subklasse arver disse egenskaber og kan udvide dem med sine egne.
123456789101112131415161718192021222324252627282930class Employee: def __init__(self, name, salary): self.name = name self.salary = salary def get_info(self): return f"{self.name}, {self.salary}" class Manager(Employee): def __init__(self, name, salary, department): super().__init__(name, salary) self.department = department def get_info(self): return f"{super().get_info()}, {self.department}" class Developer(Employee): def __init__(self, name, salary, language): super().__init__(name, salary) self.language = language def get_info(self): return f"{super().get_info()}, {self.language}" print(Employee("Anna", 2000).get_info()) print(Manager("Mark", 3500, "IT").get_info()) print(Developer("Lena", 3000, "Python").get_info())
Employee er basisklassen. Den gemmer de data, som alle medarbejdere deler. Manager og Developer er subklasser af Employee. De arver automatisk alt fra basisklassen, så de behøver ikke at genskrive den samme kode.
Kaldet til super() kører basisklassens konstruktør, så name og salary bliver sat korrekt. Hver subklasse tilføjer derefter sine egne data:
ManagertilføjerdepartmentDevelopertilføjerlanguage
Begge subklasser overskriver også get_info(). De genbruger basisversionen med super().get_info() og udvider derefter resultatet med deres egne detaljer.
Dette gør basisklassen til fundamentet, og subklassen til den specialiserede implementering, der tilføjer fleksibilitet.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat