Конструктор — важное понятие в объектно-ориентированном программировании. Он используется для инициализации переменных экземпляра объекта при его создании. В Python конструкторы определяются __init__()
специальными именами. В этой статье будут представлены основные понятия, синтаксис и использование конструкторов Python.
Что такое метод конструктора?
В объектно-ориентированном программировании конструктор — это специальный метод, используемый для инициализации состояния объекта при его создании. Он автоматически вызывается в процессе создания объекта и отвечает за установку начального значения объекта. Конструкторы обычно используются для выполнения задач инициализации, связанных с объектом, таких как установка значений по умолчанию для переменных экземпляра, выделение памяти или выполнение других необходимых операций.
Имя конструктора фиксировано в большинстве языков программирования, например, в Python имя конструктора — __init__()
. Это имя представляет собой соглашение Python, используемое для обозначения особого характера метода конструктора.
Синтаксис конструктора
В Python определение конструктора требует соблюдения следующего синтаксиса:
class ClassName:
def __init__(self, parameter1, parameter2, ...):
# 构造方法的代码
Метод конструктора определяется с использованием ключевого слова def, а имя метода — __init__()
. Первым аргументом конструктора обычно является self
сам экземпляр создаваемого объекта. Последующие параметры используются для передачи значений, необходимых при инициализации объекта.
Внутри блока кода конструктора вы можете выполнять различные операции инициализации, такие как присвоение значений переменным экземпляра, вызов других методов или выполнение других необходимых операций.
Меры предосторожности:
- Префикс и суффикс init представляют собой два подчеркивания _
- Метод может содержать несколько параметров, но он должен содержать параметр self, и он должен быть первым параметром, поэтому он должен содержать хотя бы один параметр self.
- Первый параметр self указывает на вновь созданный объект.
Конструктор класса по умолчанию
- Конструктор init () не требуется
- Если вы его не напишете, Python автоматически добавит конструктор init () , содержащий только параметр self , который также называется конструктором по умолчанию класса.
Конструктор без параметров
class Person:
def __init__(self):
print("自动调用构造方法")
self.name = 'Muller'
person = Person()
print(person.name)
#####
自动调用构造方法
Muller
Очевидно, что при создании этого объекта person
неявно вызывается созданный вручную __init__()
конструктор .
Конструктор с параметрами
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def display(self):
print("Name:", self.name)
print("Age:", self.age)
# 创建Person对象并传入参数
person = Person("John", 25)
# 调用对象的方法
person.display()
В приведенном выше примере мы определили Person
класс и приняли два параметра name
и метод конструктора age
. Конструктор присваивает эти параметры переменным экземпляра объекта self.name
и self.age
.
Затем мы создаем объект с именем person
и Person
передаем ему параметры «Джон» и 25. При создании объекта автоматически вызывается конструктор, и переданные параметры используются для инициализации переменных экземпляра объекта.
Наконец, мы вызываем метод person
объекта display()
, который выводит имя и возраст объекта.
Подведем итог
Конструктор — важное понятие в объектно-ориентированном программировании, оно используется для инициализации состояния объекта при его создании. Конструкторы в Python __init__()
определяются специальными именами, которые принимают self
параметры и другие необходимые параметры. Блок кода конструктора используется для выполнения операций инициализации, таких как присвоение значений переменным экземпляра или выполнение других необходимых операций.
Используя конструкторы, мы можем легко инициализировать объект при его создании и убедиться, что состояние объекта установлено правильно. Метод построения — важный момент знаний, который необходимо освоить в объектно-ориентированном программировании на Python.
В заключение хотелось бы поблагодарить всех, кто внимательно читает мою статью.Взаимность всегда необходима.Хоть это и не очень ценная вещь, но если вы умеете ею пользоваться, то можете взять напрямую:
Эта информация должна стать наиболее полным и полным складом подготовки для друзей [тестирования программного обеспечения].Этот склад также сопровождал десятки тысяч инженеров-тестировщиков в самом трудном путешествии.Надеюсь, он также сможет помочь вам!