т.е. они не попадают в интерфейс класса?
Линтер на подобное объявление метода ругается, говорит "The declaration '_методНейм' isn't referenced." 🤔 Перекрытие этого метода в наследнике - есть, и в наследнике описанный метод используется.
Минимальный пример ситуации:
abstract class IFoo {
void _private(); // "The declaration '_private' isn't referenced"
void public();
}
class A implements IFoo {
@override
void _private() {}
@override
void public() => _private(); // попытка успокоить линтер
}
"isn't referenced" означает, что он не используется. Он не ругается, а уведомляет. "Приватные" методы могут быть, только надо помнить, что в дарте они file-private, а не class-private. Соответственно, абстрактный приватный метод может быть переопределен только в том случае, если класс-наследник находится в том же файле. Вы не сможете унаследоваться от такого класса в другом файле (если этот метод абстрактный, конечно же).
Это хорошо, но не проясняет первичный вопрос :)
Обсуждают сегодня