Basisklasser og subklasser
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 superklassen. Den lagrer data som alle ansatte deler. Manager og Developer er subklasser av Employee. De arver automatisk alt fra superklassen, så de trenger ikke å skrive den samme koden på nytt.
Kallet til super() kjører konstruktøren til superklassen, 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 superklassen til grunnlaget, og subklassen til en spesialisert implementasjon 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