2017-12-16 09:11:17 +01:00
|
|
|
#**ć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.
|
|
|
|
|
2017-12-03 13:05:05 +01:00
|
|
|
#!/usr/bin/env python2
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
2017-12-16 09:11:17 +01:00
|
|
|
class Employee:
|
|
|
|
class_counter=1
|
|
|
|
def __init__(self, Imię, Nazwisko):
|
|
|
|
self.Imię=Imię
|
|
|
|
self.Nazwisko=Nazwisko
|
|
|
|
self.Id= Employee.class_counter
|
|
|
|
Employee.class_counter+=1
|
|
|
|
|
|
|
|
def get_id(self):
|
|
|
|
print(self.Id)
|
|
|
|
|
|
|
|
|
|
|
|
class Recruiter (Employee):
|
|
|
|
|
|
|
|
def __init__(self, Id, lista):
|
|
|
|
super().__init__(Id)
|
|
|
|
self.lista=lista
|
|
|
|
|
|
|
|
def recruit(self, Id, lista):
|
|
|
|
lista.append(Id)
|
|
|
|
print(len(lista))
|
|
|
|
#print(self)
|
|
|
|
|
|
|
|
print(help(Recruiter))
|
|
|
|
print(Recruiter.recruit(emp3.Id))
|
|
|
|
print(Recruiter.lista)
|
|
|
|
|
|
|
|
emp1=Employee("Edyta","Renk")
|
|
|
|
emp2=Employee("Jacek", "Placek")
|
|
|
|
emp3=Employee("Jacek", "Macek")
|
|
|
|
print(emp2.id)
|
|
|
|
Employee.get_id(emp3)
|