0

In Java we have modifiers like private, static, etc., and annotations like @Override, @SuppressWarnings, etc. Apparently, it's a bad idea to have @Override being an annotation, so Kotlin turned it into a modifier override.
It looks like when the modifier/annotation affects on the semantics, then ...