Python тілі негіздері (әдістемелік құрал)


Полиморфизм: әртүрлі объектілерде бір операция әртүрлі функциялар орындауы мүмкін. Инкапсуляция



Pdf көрінісі
бет22/25
Дата13.04.2023
өлшемі1,76 Mb.
#82134
түріПрограмма
1   ...   17   18   19   20   21   22   23   24   25
Полиморфизм: әртүрлі объектілерде бір операция әртүрлі функциялар орындауы мүмкін.
Инкапсуляция: оның көмегімен объектінің ішіндегі кейбір артық ішкі ақпаратты сыртқы 
ортадан жасыруға болады.
Мұрагерлік: базалық кластар негізінде арнайы кластар құруға болады. Сол арқылы кодты 
қайталап жазудан арылуға болады.
Композиция: объект бірнеше объектіден құралған құрамдас күрделі объект болуы 
мүмкін. 
Кластар 
Класс – дегеніміз объект құрылғыларын сипаттайтын тип. Объект – ол кластың данасы. 
Python Объектіге бағытталған программалау принциптеріне сәйкес келеді. Python ішінде 
барлығы да объект болып табылады – жолдар да, тізімдер де, сөздіктер де, қалған барлығы да.
Класты сипаттаудың қарапайым моделі мынадай болады:
class класс аты:
инструкция1 


28 
... 
инструкцияN 
Әдетте, әдістің атындағы бірінші аргумент – self. Тілдің авторы Гвидо Ван Россум 
айтқандай, бұл келісім ғана: self деген атаудың ешқандай да арнайы мағынасы жоқ. self 
аргументі кластың басқа атрибуттарына бару үшін ғана пайдалы.
# Python-да өзіміздің класымызды жазайық.
class A:
і = 0
# Класс атрибуты
def prnt(self):
# Класс әдісі
print(self.i)
# Енді осы кластың бірнеше данасын кэдэа аламыз
а = А()
# Дана 'а'
b = А()
# Дана 'b'
a.і = 3
# 'а' данасының 'і' атрибуты, тең болады 3
b.і = 5
# 'b' данасының 'і' атрибуты, тең болады 5
a.prnt() # 'а' данасы әдісін шақыру
b.pmt() # 'b' данасы әдісін шақыру 
Нәтижесі:
3

Инкапсуляция 
Инкапсуляция дегеніміз – объект құрамындағы компоненттерге (әдістер мен айнымалы-
ларға) баруды шектеу. Инкапсуляция көмегімен кейбір компоненттер тек қана класс ішінде 
қолжетімді болады. Python ішіндегі инкапсуляция программалаушылар арасындағы келісімге 
байланысты іске асады, қайсы атрибутты жалпыға қолжетімді ету немесе қайсысын ішкі 
атрибут ретінде белгілеу – әр программада жеке шешіледі. 
Атрибут атының басындағы астын бір рет сызу – айнымалы немесе әдістің кластан тыс 
қолданылмайтындығын, бірақ осы ат бойынша қолжетімді екендігін көрсетеді.
Атрибут атының басындағы астын екі рет сызу – оның қорғаныс қауіпсіздігін үлкейтеді: 
атрибут осы аты бойынша қолжетімсіз бола бастайды (мына біздің мысалда жұмыс істемеуі 
мүмкін, бірақ өз инспекторыңызда жасап көріңіз).
Екі рет сызсақ та, атрибут толық қорғалмайды және:
b.В private()
атымен қолжетімді болып қала береді.
class A:
def _private(self):
ргіпІ("Бұл приват әдісі!")
а = А()
a._private() 
Нәтижесі:
Бұл приват әдісі! 


Достарыңызбен бөлісу:
1   ...   17   18   19   20   21   22   23   24   25




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет