As the dev doc says, Dart doesn't have the keywords public , protected , and private . If an identifier starts with an underscore (_), it's private to its library. But I found many @protected keywords in Flutter framework. What does the @protected mean?
abstract class InheritedWidget extends ProxyWidget {
const InheritedWidget({ Key key, Widget child })
: super(key: key, child: child);
@override
InheritedElement createElement() => InheritedElement(this);
@protected
bool updateShouldNotify(covariant InheritedWidget oldWidget);
}