1
0
forked from tdwojak/Python2017
This commit is contained in:
s45151 2017-12-03 15:36:13 +01:00
parent 66223f51c8
commit a37ec78f22

View File

@ -1,3 +1,59 @@
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
"""
**ćwiczenie 2**
Napisz prostą hierarchię klas:
* Klasa bazowa ``Employee``, która będzie zawierać informacje o imieniu i nazwisku pracownika. Ponadto każdy pracownik
otrzyma numer ``id``, który będzie unikatowy. Wykorzystaj do tego atrybut statyczny. Napisz metodę ``get_id``, która
zwraca identyfikator pracownika.
* Klasy pochodna: ``Recruiter``, która ma dodatkową mtodę ``recruit``, która jako parament przyjmuje obiekt `
`Employee`` i zapisuje jego ``id`` w liście ``self.recruited``.
* Klasa pochodna ``Programmer``. Klasa ``Programmer`` ma przyjąć w konstruktorze podstawowe informacje (imię i nazwisko)
oraz obiekt rekturera. Ponadto stwórz atrybut ``recruiter``, który będzie przechowywać ``id`` rekrutera.
"""
class Employee():
id=0
@staticmethod
def add_id():
Employee.id+=1
return id
def __init__(self, name, surname):
self.id = Employee.add_id()
self.name = name,
self.surname = surname
def get_id(self):
return self.id
class Recruiter(Employee):
def __init__(self):
super().__init__()
def recruite(self,Employee):
self.recruited.append(self.recruite())
return Employee.get_id()
class Programmer(Recruiter):
pass
def main():
print(Employee.id)
adam=Employee('Adam','Kaczmarek')
print(adam.get_id())
print(Employee.id)
michal=Employee('Michal','Kaczmarek')
print(Employee.id)
print(michal.get_id())
michalHR = Recruiter('Michal','Kowalski')
main()