Встречается на собеседованиях • сегодня
Можно ли создать метод, который вызывается без создания класса
Да, можно создать метод, который вызывается без создания экземпляра класса, используя статические методы (@staticmethod) или методы класса (@classmethod).
Пример:
python
class MyClass:
@staticmethod
def static_method():
return "Вызывается без создания экземпляра!"
Вызов без создания объекта
result = MyClass.static_method()
print(result) # Выводит: "Вызывается без создания экземпляра!"
text
**Разница между `@staticmethod` и `@classmethod`:**
- `@staticmethod` не принимает ни `self`, ни `cls` — это просто функция внутри класса.
- `@classmethod` принимает `cls` (класс) и может работать с атрибутами класса.
**Когда использовать:**
- `@staticmethod` — если метод логически относится к классу, но не требует доступа к его атрибутам.
- `@classmethod` — если нужно работать с классом (например, для фабричных методов).
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы