Basisklasser og Underklasser
Sveip for å vise menyen
Implementering av arv i Python gjøres gjennom basisklasser (foreldre) og subklasser (barn).
En basisklasse definerer generelle egenskaper og oppførsel, mens en subklasse arver disse funksjonene og kan utvide dem med 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 lagrer data som alle ansatte deler. Manager og Developer er subklasser av Employee. De arver automatisk alt fra basisklassen, så de trenger ikke å skrive den samme koden på nytt.
Kallet til super() kjører konstruktøren til basisklassen, slik at name og salary blir satt riktig. Hver subklasse legger deretter til sine egne data:
Managerlegger tildepartmentDeveloperlegger tillanguage
Begge subklassene overstyrer også get_info(). De gjenbruker basisversjonen med super().get_info() og utvider deretter resultatet med sine egne detaljer.
Dette gjør basisklassen til grunnlaget, og subklassen til den spesialiserte implementasjonen som gir fleksibilitet.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår