Python тілінде әдетте объектілерге қолданылатын
super() әдісі бар. Оның негізгі міндеті – мұрагер класта ата-ана класының әдістерін пайдалану мүмкіндігі.
Келесі мысал толық емес, сондықтан орындалмайды, дегенмен де оны көрсете кету керек:
class A:
def
init
(self):
print(u'A класының конструкторы') # A класының мұрагері
class B(A):
def
init
(self):
print(u'B класының конструкторы') super(B, self).
init
()
a = B()
Нәтижесі:
В класының конструкторы ReferenceError: $$super is not defined
Статикалық әдістер
Класс данасын құрмай-ақ класс ішінде қолжетімді болатын әдісті құруға болады. Ол үшін класс ішінде әдісті анықтамастан бұрын @staticmethod декораторын көрсету керек.
class A:
@staticmethod
def mymethod(a, b):
return a + b print(A.mymethod(12, 13))
Нәтижесі:
25
Құжатқа қолжетімді болу үшін
doc арнайы әдісі қарастырылған. Python интерпре- таторы кластың немесе функцияның бастапқы кодын өңдеген кезде құжаттау жолдарын табады да, оларды берілген объектінің
doc атрибутының мәні етеді. Мысал жұмыс істемейді, бірақ сонда да үлгісін көрсетейік:
class A:
"'Бұл класты құжаттау жолдары.
Ол үш рет біреулік тырнақшаға алынған'" def test(self):
""" Бұл test әдісін құжаттау""" pass
print(A.
doc
) print(A.test.
doc
)
AttributeError: 'А' class has no attribute ' doc '