Какие принципы ООП есть ?
Спросят с вероятностью 14%
Объектно-ориентированное программирование (ООП) — это парадигма, основанная на концепции объектов, которые могут содержать данные в виде полей (часто называемых атрибутами или свойствами) и код в виде процедур (часто называемых методами). Основные принципы ООП включают:
1️⃣Инкапсуляция
Это ограничение доступа к некоторым компонентам объекта и скрытие внутренней реализации от внешнего мира. Это позволяет защитить данные объекта от неправильного использования и является мощным инструментом для управления сложностью программ.
2️⃣Наследование
Позволяет новому классу перенимать свойства и методы уже существующего класса. Это обеспечивает повторное использование кода и установление иерархических отношений между классами.
Пример на Python:
3️⃣Полиморфизм
Это возможность использовать объекты с одинаковым интерфейсом без информации о конкретных типах и внутренней структуре объектов. В ООП это чаще всего достигается с помощью переопределения методов (method overriding) и перегрузки методов (method overloading).
Пример на Python (переопределение методов):
4️⃣Абстракция
Подразумевает выделение ключевых, существенных характеристик объекта, исключая из рассмотрения незначительные. Это упрощает программирование и управление сложностью.
Основные принципы ООП включают инкапсуляцию (защита данных внутри класса), наследование (расширение функциональности существующих классов), полиморфизм (один интерфейс для разных типов действий) и абстракцию (сосредоточение на важных характеристиках объектов). Эти принципы помогают делать программы более модульными, понятными и легкими для управления.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 207 вопроса на Data Scientist. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых
Спросят с вероятностью 14%
Объектно-ориентированное программирование (ООП) — это парадигма, основанная на концепции объектов, которые могут содержать данные в виде полей (часто называемых атрибутами или свойствами) и код в виде процедур (часто называемых методами). Основные принципы ООП включают:
1️⃣Инкапсуляция
Это ограничение доступа к некоторым компонентам объекта и скрытие внутренней реализации от внешнего мира. Это позволяет защитить данные объекта от неправильного использования и является мощным инструментом для управления сложностью программ.
class Account:
def __init__(self, owner, amount=0):
self.owner = owner
self.__balance = amount # Приватная переменная
def deposit(self, amount):
if amount > 0:
self.__balance += amount
print(f"Добавлено {amount} на баланс")
else:
print("Депозит должен быть положительным числом")
def show_balance(self):
print(f"Баланс: {self.__balance}")
2️⃣Наследование
Позволяет новому классу перенимать свойства и методы уже существующего класса. Это обеспечивает повторное использование кода и установление иерархических отношений между классами.
Пример на Python:
class Vehicle:
def __init__(self, brand, model):
self.brand = brand
self.model = model
def start_engine(self):
print("Двигатель запущен")
class Car(Vehicle): # Класс Car наследует от класса Vehicle
def open_trunk(self):
print("Багажник открыт")
3️⃣Полиморфизм
Это возможность использовать объекты с одинаковым интерфейсом без информации о конкретных типах и внутренней структуре объектов. В ООП это чаще всего достигается с помощью переопределения методов (method overriding) и перегрузки методов (method overloading).
Пример на Python (переопределение методов):
class Bird:
def fly(self):
print("Летит как птица")
class Eagle(Bird):
def fly(self):
print("Летит как орел")
class Penguin(Bird):
def fly(self):
print("Не умеет летать")
4️⃣Абстракция
Подразумевает выделение ключевых, существенных характеристик объекта, исключая из рассмотрения незначительные. Это упрощает программирование и управление сложностью.
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
pass
@abstractmethod
def perimeter(self):
pass
class Rectangle(Shape):
def __init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
def perimeter(self):
return 2 * (self.width + self.height)
Основные принципы ООП включают инкапсуляцию (защита данных внутри класса), наследование (расширение функциональности существующих классов), полиморфизм (один интерфейс для разных типов действий) и абстракцию (сосредоточение на важных характеристиках объектов). Эти принципы помогают делать программы более модульными, понятными и легкими для управления.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 207 вопроса на Data Scientist. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых