Дисциплины - Объектно-ориентированное программирование

ООП в Python - Создание собственных классов

Определим класс и дадим ему некоторые атрибуты и методы. Так выглядит типичный класс в Python:

class Vehicle(object):
    """docstring"""
 
    def __init__(self, color, doors, tires):
        """Constructor"""
        self.color = color
        self.doors = doors
        self.tires = tires
    
    def brake(self):
        """
        Stop the car
        """
        return "Braking"
    
    def drive(self):
        """
        Drive the car
        """
        return "I'm driving!"

В данном примере мы добавили три атрибута и два метода. Атрибуты описывают автомобиль. У него есть цвет, определенное количество дверей и колес. Также у него есть два метода, которые описывают поведение. В нашем случае, автомобиль может двигаться и останавливаться.

Создание объекта на основе класса осуществляется с помощью символа приравнивания (=), т.е. так же, как и определение любой другой переменной.

car = Vehicle('red', 4, 'Белшина')

Для обращения к методам и свойствам объекта используется точечная нутация.

print(car.color)

Попытка вызова несуществующего атрибута приводит к ошибке AttributeError.

Тройные ковычки внутри метода (которые идут сразу за определением метода, с новой строки) - это коментарий, описывающий поведение метода.

Вы могли заметить, что все методы, включая первый, имеют аргумент, под названием self. Также обратите внимание на предопределенный метод __init__ Давайте рассмотрим их внимательнее.

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться
814301 БГУИР
814302 БГУИР
814303 БГУИР
894351 БГУИР
90421 БГУИР


Изображения Видео

1. Абстрактная фабрика https://www.youtube.com/watch?v=1mVONOCxfLg
2. Фабричный метод https://www.youtube.com/watch?v=5UqUDR6_2cY
3. Шаблон декоратор https://www.youtube.com/watch?v=Lwb9bm8yKD0
4. Dessign patterns on PHP https://github.com/domnikl/DesignPatternsPHP
5. Приёмы объектно-ориентированного проектирования. Паттерны проектирования Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес; [пер. с англ.: А. Слинкин науч. ред.: Н. Шалаев]. — Санкт-Петербург [и др.] : Питер, 2014. — 366 с. : ил. ; 24 см.
6. Приемы объектно-ориентированного проектирования. Паттерны проектирования Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес; [пер. с англ.: А. Слинкин науч. ред.: Н. Шалаев]. — Санкт-Петербург [и др.] : Питер, 2014. — 366 с. : ил. ; 24 см.
7. Ajax http://erud.by/ajax
8. Ajax http://erud.by/ajax
9. Ajax http://erud.by/ajax
10. Документация Laravel http://laravel.com
Задание к курсовой работе
Задание к курсовой работе
Вопросы к экзамену