forked from tdwojak/Python2017
resolve2
This commit is contained in:
parent
66223f51c8
commit
a37ec78f22
@ -1,3 +1,59 @@
|
|||||||
#!/usr/bin/env python2
|
#!/usr/bin/env python2
|
||||||
# -*- coding: utf-8 -*-
|
# -*- 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()
|
Loading…
Reference in New Issue
Block a user