Встречается на собеседованиях • сегодня
Какие типы фаерволов знаешь
В Python существуют три основных типа фаерволов (final, frozen, sealed), которые помогают контролировать наследование и изменение классов:
- @final (PEP 591) - запрещает наследование от класса или переопределение метода:
python
from typing import final
@final
class Base:
pass
class Child(Base): # Ошибка: Cannot inherit from final class "Base"
pass
text
2. **@frozen** (из dataclasses) - делает атрибуты класса неизменяемыми:
```python
from dataclasses import dataclass
@dataclass(frozen=True)
class Point:
x: int
y: int
p = Point(1, 2)
p.x = 3 # Ошибка: cannot assign to field 'x'- @sealed (PEP 622) - ограничивает набор возможных подклассов (пока не реализовано в стандартной библиотеке).
Эти декораторы помогают создавать более надежный и предсказуемый код, предотвращая нежелательные изменения в иерархии классов.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы