Нефинальным. Ключевое слово open явно указывает, что вы можете наследоваться от этого класса и переопределять его члены.
swift
Сравним с другими модификаторами доступа:
| Модификатор | Наследование | Переопределение членов |
|---|---|---|
private | Нет (в рамках файла/скоупа) | Нет |
fileprivate | Нет (в рамках файла) | Нет |
internal | Да (в рамках модуля) | Да (в рамках модуля) |
public | Да (в рамках модуля) | Да (в рамках модуля) |
open | Да (в любом модуле) | Да (в любом модуле) |
final | Нет | Нет |
Класс или член, помеченный final b, нельзя переопределить или наследовать, делая его финальным. open делает обратное.