logo

Класе и објекти у Питхон-у

Питхон је објектно оријентисани програмски језик који нуди класе, које су моћан алат за писање кода за вишекратну употребу. Да би се описали објекти са заједничким карактеристикама и понашањима, користе се класе. У овом чланку ћемо испитати Пајтонове идеје о класама и објектима.

Часови у Питхон-у:

У Питхон-у, класа је кориснички дефинисан тип података који садржи и саме податке и методе које се могу користити за манипулисање њима. У извесном смислу, класе служе као шаблон за креирање објеката. Они обезбеђују карактеристике и операције које ће објекти користити.

Претпоставимо да је класа прототип зграде. Зграда садржи све детаље о спрату, собама, вратима, прозорима итд. На основу ових детаља можемо направити колико год желимо зграда. Дакле, зграда се може посматрати као класа, и можемо креирати што више објеката ове класе.

Креирање класа у Питхон-у

У Питхон-у, класа се може креирати коришћењем кључне речи цласс, након чега следи име класе. Синтакса за креирање класе је дата у наставку.

Синтакса

 class ClassName: #statement_suite 

У Питхон-у морамо приметити да је свака класа повезана са документационим низом коме се може приступити коришћењем .__доц__. Класа садржи пакет исказа који укључује поља, конструктор, функцију итд. дефиницију.

Пример:

код:

 class Person: def __init__(self, name, age): # This is the constructor method that is called when creating a new Person object # It takes two parameters, name and age, and initializes them as attributes of the object self.name = name self.age = age def greet(self): # This is a method of the Person class that prints a greeting message print('Hello, my name is ' + self.name) 

Име и старост су два својства класе Персон. Поред тога, има функцију која се зове греет која штампа поздрав.

Објекти у Питхон-у:

Објекат је посебна инстанца класе са јединственим карактеристикама и функцијама. Након што је класа успостављена, можете правити објекте на основу ње. Коришћењем конструктора класе, можете креирати објекат класе у Питхон-у. Атрибути објекта се иницијализују у конструктору, што је посебна процедура са именом __инит__.

Синтакса:

 # Declare an object of a class object_name = Class_Name(arguments) 

Пример:

код:

 class Person: def __init__(self, name, age): self.name = name self.age = age def greet(self): print('Hello, my name is ' + self.name) # Create a new instance of the Person class and assign it to the variable person1 person1 = Person('Ayan', 25) person1.greet() 

Излаз:

 'Hello, my name is Ayan' 

Сам параметар

Параметар селф се односи на тренутну инстанцу класе и приступа променљивим класе. Можемо користити било шта уместо селфа, али то мора бити први параметар било које функције која припада класи.

_ _инит_ _ метода

Да би се направила инстанца класе у Питхон-у, позива се одређена функција која се зове __инит__. Иако се користи за постављање атрибута објекта, често се назива конструктором.

кор ц++

Самоаргумент је једини који захтева метода __инит__. Овај аргумент се односи на новогенерисану инстанцу класе. Да бисте иницијализовали вредности сваког атрибута повезаног са објектима, можете декларисати додатне аргументе у методи __инит__.

Променљиве класе и инстанце

Све инстанце класе размењују варијабле класе. Они функционишу независно од метода класе и могу им се приступити коришћењем имена класе. Ево илустрације:

код:

 class Person: count = 0 # This is a class variable def __init__(self, name, age): self.name = name # This is an instance variable self.age = age Person.count += 1 # Accessing the class variable using the name of the class person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(Person.count) 

Излаз:

 2 

Док су променљиве инстанце специфичне за сваку инстанцу класе. Они су специфицирани коришћењем селф-аргумента у методи __инит__. Ево илустрације:

код:

 class Person: def __init__(self, name, age): self.name = name # This is an instance variable self.age = age person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(person1.name) print(person2.age) 

Излаз:

 Ayan 30 

Променљиве класе се креирају одвојено од било које методе класе и деле их све копије класе. Свака инстанца класе има сопствене променљиве инстанце, које су наведене у методи __инит__ користећи селф-аргумент.

Закључак:

У закључку, Питхон-ове класе и појмови објеката су снажне идеје које вам омогућавају да пишете програме за вишекратну употребу. Можете комбиновати информације и могућности у један ентитет који може да се користи за изградњу многих објеката успостављањем класе. Користећи нотацију тачке, можете приступити методама и својствима објекта након што је креиран. Можете развити логичнији, ефикаснији и управљивији код тако што ћете разумети Питхон класе и објекте.