Всем салют, друзья!
Продолжаем наш базовый курс по Python:
Вступайте в группу - vk.com/mrsisadm - там больше интересного!!!
Сегодня мы обсудим объектно-ориентированное программирование (ООП) Python, класс, объект и конструктор с некоторыми примерами программ.
Python - один из немногих языков программирования, который одновременно поддерживает как функцию структурированного программирования, так и объектно-ориентированное программирование. Итак, в одной программе мы можем иметь раздел на основе ООП вместе со структурированным разделом.
Объектно-ориентированное программирование на Python
Объектно-ориентированное программирование (ООП) - это парадигма программирования, основанная на концепции классов и объектов.
Объект - это фактически структура данных, которая содержит как данные, так и функции или методы, которые помогают манипулировать этими данными или работать с ними.
Класс - это план, на котором основано создание объекта. Класс - это основа для объектов. Перед созданием объекта важно определить класс.
Объекты создаются или создаются из класса. Один класс может иметь несколько объектов с разными атрибутами. Ниже приведен пример программы, который показывает, как определить класс, а затем создать его объекты в Python.
Пример класса и объекта Python
class BaseClass(object):
def write(self):
print "This is an Instance of BaseClass"
# main
BaseObject = BaseClass()
BaseObject.write()
Выход
В первой строке объявляется имя класса с параметром «объект», который указывает, что класс основан на типе данных объекта.
Следующая строка - это объявление метода (функции), который объект может использовать позже после создания экземпляра. У него есть один параметр с именем self.
Фактически, каждый метод должен иметь в качестве первого специального параметра self, который позволяет методу ссылаться на сам объект.
За этим следует набор инструкций в объявлении функции.
Теперь перейдем к основной функции. На самом деле нам не нужно явно объявлять какую-либо основную функцию в коде Python. Python автоматически понимает объем main, если отступы правильные.
Мы объявили переменную в основной функции, которой присвоено имя класса. Фактически этот оператор создает объект этого конкретного класса.
Теперь мы можем получить доступ к методу внутри класса, и это делается вторым оператором основной функции.
Вызов метода
Следующий синтаксис используется для доступа к методам класса с помощью объектов.
Синтаксис
Object_Name.Method_Name()
Конструктор Python
Конструктор - это специальный метод, который автоматически вызывается, как только вы создаете объект. Фактически он используется для непосредственной инициализации атрибутов (переменных) класса во время создания объекта. Ниже приведен пример, показывающий, как можно определить конструктор.
пример
class BaseClass(object):
#constructor
def __init__(self):
print "A New Object has been Created"
#method
def write(self):
print "This is an Instance of BaseClass"
# main
BaseObject1 = BaseClass()
BaseObject2 = BaseClass()
BaseObject1.write()
BaseObject1.write()
Выход
Здесь для определения конструктора используется метод __init __ ().
В приведенной выше программе мы создали два объекта, связанных с одним и тем же классом.
Давайте возьмем другой пример, чтобы понять концепцию класса и объекта в Python.
class Doctor:
def __init__(self, docname, docsalary):
self.docname = docname
self.docsalary = docsalary
def display(self):
print "Doctor Name : ", self.docname, ", Salary: ", self.docsalary
Doctor1 = Doctor("Dr. Neeraj", 120000)
Doctor2 = Doctor("Dr. Tushar", 80000)
Doctor1.display()
Doctor2.display()
Выход