Is it a fair assumption to say that if a class has a synchronized block, it's always better to have @GuardedBy annotation in that class.
More specifically, will there be a case where we have a synchronized block in a java file but we cannot use @GuardedBy annotation in that class on any field or method ?